系統(tǒng)版本:CentOS 6.9 x86_64
軟件版本:nginx-1.12.2
php-5.5.38
可道云kodexplorer4.37
1.1 創(chuàng)建目錄
mkdir -p /service/tools
mkdir /application
cd /service/tools
wget http://nginx.org/download/nginx-1.12.2.tar.gz 下載或者上傳nginx包
1.2 解壓
tar zxvf nginx-1.12.2.tar.gz
1.3 編譯安裝
yum install gcc gcc-c++ glibc -y #安裝編譯器
yum install pcre-devel zlib-devel openssl-devel –y
裝pcre為了重寫rewrite提供正則表達(dá)式庫,裝zlib為了gzip提供數(shù)據(jù)壓縮用的函數(shù)庫,裝openssl為 Nginx 模塊(如 ssl )提供密碼算法、證書以及 SSL 協(xié)議等功能
C語言源碼包,需要編譯才能使用
編譯安裝三部曲
./configure(指定編譯參數(shù):安裝目錄及版本)
cd nginx-1.12.2
./configure --prefix=/application/nginx-1.12.2 --pid-path=/var/run/nginx.pid --user=nginx --group=nginx --with-http_ssl_module
./configure -help #查看幫助
生成Makefile文件
make
make是用來編譯的,它從Makefile中讀取指令,然后編譯
cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/os/unix -I objs -I src/http -I src/http/modules \
-o objs/src/http/modules/ngx_http_geo_module.o \
src/http/modules/ngx_http_geo_module.c
make install
make install是用來安裝的,它也從Makefile中讀取指令,安裝到指定的位置
[root@Web01 nginx-1.12.2]# cd /application/nginx-1.12.2/
[root@Web01 nginx1.12.2]# ls -1
conf #配置文件
html #網(wǎng)站html文件
logs #日志
sbin #二進(jìn)制的執(zhí)行文件
1.4 配置
創(chuàng)建軟鏈接
ln -s /application/nginx-1.12.2 /application/nginx
ln -s /application/nginx/sbin/nginx /usr/bin/
useradd -M -s /sbin/nologin -r -u 88 nginx #創(chuàng)建用戶
-M 不創(chuàng)建用戶的HOME目錄
-s shell 指定默認(rèn)登錄shell
-r 創(chuàng)建系統(tǒng)賬戶
-u uid 為賬戶指定一個唯一的UID
conf目錄
fastcgi.conf 配合php
uwsgi_params 配合python
nginx.conf 主配置文件
mime.types 多媒體資源類型配置文件
最小化配置文件
grep -Ev '^$|#' nginx.conf.default >nginx.conf
[root@Web01 conf]# grep -Ev '^$|#' nginx.conf.default >nginx.conf
[root@Web01 conf]# cat nginx.conf
worker_processes 1; #工作進(jìn)程數(shù)
events { #event模塊
worker_connections 1024; #默認(rèn)工作連接數(shù)
}
http { #http模塊,nginx核心模塊
include mime.types; #加載的多媒體資源類型配置文件
default_type application/octet-stream; #默認(rèn)類型(16進(jìn)制)
sendfile on; #優(yōu)化配置選項
keepalive_timeout 65; #長連接超時時間65秒
server {
listen 80; #默認(rèn)監(jiān)聽的端口
server_name localhost; #網(wǎng)站域名
location / { #網(wǎng)站站點根目錄位置
root html; #網(wǎng)站文件
index index.html index.htm; #網(wǎng)站首頁
}
error_page 500 502 503 504 /50x.html; #錯誤頁面500,502.503.504返回50x.html
location = /50x.html {
root html;
}
}
}
1.5 啟動
/application/nginx/sbin/nginx –t #語法檢查并測試
/application/nginx/sbin/nginx #啟動
/application/nginx/sbin/nginx -s reload #平滑重啟,不影響用戶訪問
/application/nginx/sbin/nginx -s stop #關(guān)閉
/application/nginx/sbin/nginx -V #查看版本及安裝的模塊
啟動后會生成幾個temp目錄
瀏覽器訪問
編譯安裝Nginx完成
2.1下載并安裝相關(guān)編譯器
mkdir -p /service/tools #創(chuàng)建目錄
cd /service/tools/
wget http://mirrors.sohu.com/php/php-5.5.38.tar.gz #下載包
tar xf php-5.5.38.tar.gz #解壓
yum install gcc gcc-c++ glibc -y #安裝編譯器,如果已經(jīng)編譯安裝了nginx則不需要此步驟
yum install -y libxml2-devel curl curl-devel libjpeg-devel libpng-devel freetype-devel
安裝編譯時所需庫
cd php-5.5.38 #進(jìn)入php-5.5.38目錄
2.2 編譯安裝
編譯生成makefile
./configure
--prefix=/application/php-5.5.38
--with-jpeg-dir=/usr/lib64
--with-freetype-dir=/usr/lib64/
--with-curl
--enable-fpm
--enable-mbstring
--with-gd
--with-fpm-user=nginx
--with-fpm-group=nginx
make && make install
[root@Web02 php-5.5.38]# ln -s /application/php-5.5.38 /application/php #創(chuàng)建軟鏈接
[root@Web02 php-5.5.38]# ln -s /application/php/bin/* /usr/bin/ #創(chuàng)建命令軟鏈接
[root@Web02 php-5.5.38]# cp php.ini-production /application/php-5.5.38/etc/php.ini
拷貝默認(rèn)配置文件
[root@Web02 php-5.5.38]#
cp /application/php-5.5.38/etc/php-fpm.conf.default /application/php-5.5.38/etc/php-fpm.conf
拷貝默認(rèn)php-fpm配置文件,php-fpm 啟動進(jìn)程數(shù)
[root@Web02 php-5.5.38]# /application/php/sbin/php-fpm #啟動php
[root@Web02 php-5.5.38]# netstat -lntup|grep 9000 #查看進(jìn)程9000端口
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 97399/php-fpm
查看nginx.conf.default有關(guān)php的部分(65-71行),將此內(nèi)容添加到nginx.conf中,并修改fastcgi_param指定script文件名documentrootdocumentrootfastcgi_script_name
可以在/application/nginx/conf/fastcgi.conf查看
65 #location ~ \.php$ {
66 # root html;
67 # fastcgi_pass 127.0.0.1:9000;
68 # fastcgi_index index.php;
69 # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
70 # include fastcgi_params;
71 #}
[root@Web02 php-5.5.38]# cd /application/nginx/conf/
[root@Web02 conf]# vim nginx.conf
server {
listen 80;
server_name localhost;
index index.php index.html index.htm;
location / {
root html;
}
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME documentrootdocumentrootfastcgi_script_name;
include fastcgi_params;
}
}
}
這個配置的意思是 在瀏覽器中訪問的.php文件,實際讀取的是 $document_root(網(wǎng)站根目錄)下的.php文件 -- 也就是說當(dāng)訪問127.0.0.1/index.php的時候,需要讀取網(wǎng)站根目錄下面的index.php文件,如果沒有配置這一配置項時,nginx不回去網(wǎng)站根目錄下訪問.php文件,所以返回空白
配置項目中:include fastcgi_params; fastcgi_params 文件中含有各個nginx常量的定義,默認(rèn)情況 SCRIPT_FILENAME = /scripts$fastcgi_script_name
檢查語法nginx -t
[root@Web02 conf]# cd ../html/ #進(jìn)入到站點目錄
[root@Web02 html]# ls
50x.html index.html
[root@Web02 html]# rm -rf * #刪除原有的站點文件
[root@Web02 html]# wget http://static.kodcloud.com/update/download/kodexplorer4.37.zip
下載
[root@Web02 html]# unzip kodexplorer4.37.zip #解壓
[root@Web02 html]# nginx #啟動nginx
瀏覽器訪問
根據(jù)提示操作
su -c 'setenforce 0' #關(guān)閉selinux,su -c 指定命令,用root執(zhí)行
chmod -R 777 /var/www/html/ #按照提示修改權(quán)限
刷新頁面重新訪問,成功,設(shè)置管理員用戶名和密碼,進(jìn)行登錄及后續(xù)圖形界面操作
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。