Linux安裝Nginx1.7.4、php5.5.15和配置
阿新 • • 發佈:2017-08-13
5.5 x86 針對 dsm open params 決定 最新 apt-get
這裏使用Nginx眼下最新版1.7.4,下載地址為http://nginx.org/download/nginx-1.7.4.tar.gz。 安裝過程中須要指定之前安裝的三個包的路徑。 這裏指定的pcre文件夾不是安裝好的文件夾,而是源代碼文件夾。另外假設出現例如以下錯誤:
之後改動/usr/local/nginx1.7.4/conf/nginx.conf文件,使得nginx支持php:
Nginx是通過php-fpm監聽的9000port來解析PHP請求的。
Nginx是一個輕量級的高性能Webserver、反向代理server、郵件(IMAP/POP3/SMTP)server,是Igor Sysoev為俄羅斯訪問量第二的Rambler.ru網站開發,第一個公開版本號0.1.0公布於2004年10月4日。以類BSD許可證的形式公布。
Nginx選擇epoll and kqueue 作為開發模型並使用C編寫,在系統資源和CPU使用率上比Apache有著較大的優勢。同一時候安裝很easy,配置文件簡潔(支持perl語法),啟動easy,差點兒能夠做到7*24小時不間斷執行,即時執行數月也不須要重新啟動,同一時候支持不間斷服務的情況下進行軟件版本號升級。
此前一直是在用Apacheserver。php作為apache的一個模塊執行。同一時候也在網上見到非常多比較過兩者的文章和資料,眾說紛紜。決定親自來嘗試一下。本文作為嘗試的一個記錄。供以後備忘和回想。
本文安裝環境:
Linux 2.6.32-358.el6.x86_64 Red Hat Enterprise Linux Server release 6.4 (Santiago)
單核為Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz 的8核處理器。內存為32G
一、安裝Nginx
Nginx安裝須要依賴三個基礎包,這是最基礎的三個包,很多其它擴展模塊可通過手冊安裝。
- zlib:主要用於支持將http內容進行gzip壓縮,用於降低網絡傳輸流量
cd /usr/local #選定安裝的文件夾 wget http://zlib.net/zlib-1.2.8.tar.gz tar -zxvf zlib-1.2.8.tar.gz cd zlib-1.2.8 ./configure make make install
- pcre:用於支持nginx的正則表達式。配置文件裏都須要用到正則表達式
cd /usr/local wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.35.tar.gz tar -zxvf pcre-8.35.tar.gz cd pcre-8.35 ./configure make make install
- openssl:用於nginx支持https請求
cd /usr/local wget http://www.openssl.org/source/openssl-1.0.1i.tar.gz tar -zxvf openssl-1.0.1i.tar.gz cd openssl-1.0.1i ./configure make make install
這裏使用Nginx眼下最新版1.7.4,下載地址為http://nginx.org/download/nginx-1.7.4.tar.gz。 安裝過程中須要指定之前安裝的三個包的路徑。 這裏指定的pcre文件夾不是安裝好的文件夾,而是源代碼文件夾。另外假設出現例如以下錯誤:
src/core/ngx_regex.h:15:18: fatal error: pcre.h: No such file or directory是由於nginx版本號的不同,缺少開發依賴包,須要安裝:
apt-get install libpcre3-dev對於指定openssl的路徑。假設系統默認安裝了。那麽使用例如以下命令找出openssl所在路徑:
which openssl然後將這個路徑放在nginx的--with-openssl選項後。
tar -zxvf nginx-1.7.4.tar.gz cd nginx-1.7.4 ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre-8.35 --with-zlib=/usr/local/zlib-1.2.8 --with-openssl=/usr/local/openssl-1.0.1i make make install管理:
- 啟動: /usr/local/nginx/sbin/nginx
- 停止:kill -QUIT `cat /usr/local/nginx/logs/nginx.pid`
- 重新啟動:kill -HUP `cat /usr/local/nginx/logs/nginx.pid` 或者 /usr/local/nginx/sbin/nginx -s reload
- 改動配置文件:vim /usr/local/nginx/conf/nginx.conf
- 加入到自啟動:echo "/usr/local/nginx/sbin/nginx" >> /etc/rc.local
二、php安裝
首先針對php可能依照須要安裝php的依賴包:libxml2、libpng、libjpeg、libcurl、freetype等,這裏不再贅述。tar -zxvf php-5.5.11.tar.gz cd php-5.5.11 ./configure --prefix=/usr/local/php5.5 --enable-mbstring --with-mcrypt --with-mhash ................. --enable-fasecgi --enable-fpm make && make installconfigure中省略的是其它的依賴包選項,能夠自行取舍,最後的--enable-fpm選項一定要加上。nginx就是通過php-fpm來驅動php的。配置文件在 /usr/local/php5.5/php-fpm.conf進行配置:
<value name="listen_address">127.0.0.1:9000</value>改動為<value name="listen_address">IP:9000</value> <value name="sendmail_path">/usr/sbin/sendmail -t -i</value> <value name="display_errors">1</value> <value name="user">nobody</value> //去凝視 <value name="group">nobody</value> //去凝視 <value name="allowed_clients">127.0.0.1</value> //同意連接的PC,本機就用127.0.0.1 啟動php-fpm# /usr/local/php/sbin/php-fpm start加入到自啟動# echo "/usr/local/php/sbin/php-fpm start">>/etc/rc.local
之後改動/usr/local/nginx1.7.4/conf/nginx.conf文件,使得nginx支持php:
location / { root $documentroot; index index.html index.htm index.php; expires 30m; } location ~ /.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $documentroot$fastcgi_script_name; include fastcgi_params; }
Nginx是通過php-fpm監聽的9000port來解析PHP請求的。
Linux安裝Nginx1.7.4、php5.5.15和配置