一切本著從簡原則來做,能yum/rpm的,堅決不手工編譯 :)
本次部署環境基于CentOS 6.3 x86_64系統。
0. 準備工作#更新yum[root@imysql?~]#?yum?-y?update[root@imysql?~]#?yum?install?libaio-devel.x86_64#drupal?8.0需要用到curl模塊[root@imysql?~]#?yum?install?curl-devel[root@imysql?~]#?yum?-y?install?libpng-devel?libjpeg-devel?freetype-devel?gmp-devel?libxml2-devel
1. 安裝nginx#安裝nginx官方yum源包[root@imysql?~]#?rpm?-ivh?http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm[root@imysql?~]#?yum?-y?install?nginx[root@imysql?~]#?chkconfig?nginx?on
2. 安裝php-fpm#安裝php?yum源包[root@imysql?~]#?rpm?-ivh?rpm?-Uvh?http://repo.webtatic.com/yum/el6/latest.rpm[root@imysql?~]#?yum?-y?install?php54w
3. 配置nginx+php
/etc/nginx/nginx.conf 配置文件可以不用做任何修改。
編輯 /etc/nginx/conf.d/default.conf,以本站為例,配置文件如下:server?{????listen???????80;????server_name??imysql.com?*.imysql.com;????root???/data/www/imysql.cn/;????index?index.php?index.htm?index.html?index.shtml;????error_page??404???????????????/page_not_found;????error_page???500?502?503?504??/page_not_found;????location?~?/\.ht?{????????deny??all;????}????if?($fastcgi_script_name?~?\..*\/.*php)?{????????return?403;????}????location?/?{????????if?(!-e?$request_filename)?{????????????rewrite?^/(.*)$?/index.php?q=$1?last;????????}????}????location?~?\.php$?{????????fastcgi_pass???127.0.0.1:9000;????????fastcgi_index??index.php;????????fastcgi_param??SCRIPT_FILENAME??$document_root$fastcgi_script_name;????????include????????fastcgi_params;????}????location?~?.*\.(gif|jpg|jpeg|png|bmp|swf)$?{????????expires?30d;????}????location?~?.*\.(js|css)?$?{????????expires?1h;????}????location?^~?/sites/default/files/imagecache/?{????????index?index.php?index.html;????????if?(!-e?$request_filename)?{????????????rewrite?^/(.*)$?/index.php?q=$1?last;?break;????????}????}}
上述配置包括了nginx虛擬主機的配置,以及drupal的rewrite規則配置,簡單快速。
4. 啟動測試
每次修改完配置文件后,都記得執行下面的命令測試配置文件正確性:[root@imysql?~]#?/etc/init.d/nginx?configtestnginx:?the?configuration?file?/etc/nginx/nginx.conf?syntax?is?oknginx:?configuration?file?/etc/nginx/nginx.conf?test?is?successful
確認配置文件無誤后,執行下面的命令重載nginx,使其生效:[root@imysql?~]#?/etc/init.d/nginx?reload#或者restart[root@imysql?~]#?/etc/init.d/nginx?restart
大功告成 )