Nginx是一款高性能的Web服務器軟件,其性能優異已經被廣泛認可,但是Nginx本身并不能夠處理PHP等動態腳本,而這個時候就需要使用到php-fpm,它可以解釋PHP腳本并將PHP腳本解析成Html代碼返回給Nginx服務器。而對于一些常見的網站管理軟件,如Rockmongo,由于其具有用戶友好的界面和便捷的數據管理功能,因此其也被廣泛的使用。本文主要介紹如何在Nginx上配置PHP-FPM并在其之上運行Rockmongo。
首先介紹Nginx上PHP環境的配置,其配置非常簡單,在Nginx主配置文件中加入以下內容即可:
location / { try_files $uri $uri/ /index.php?$query_string; } 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 / 路徑會默認訪問 index.php 文件。而當URL中包含.php文件的時候則會轉向到 location ~ \.php$,接下來是fastcgi_pass,它會將請求通過127.0.0.1:9000端口轉發給PHP-FPM進行處理,fastcgi_param內的參數會傳遞給后端PHP,其中$fastcgi_script_name是指PHP執行的文件名。 接下來是PHP-FPM的配置,在配置文件中進行以下設置即可:
listen = 127.0.0.1:9000 listen.owner = nginx listen.group = nginx listen.mode = 0660 user = nginx group = nginx對于listen,其指明了php-fpm的運行端口地址,而listen.xxx指明了運行該服務的用戶或組,這樣可以為PHP-FPM服務限制權限,提高服務的安全性。 接下來是Rockmongo的配置,其安裝非常簡單,直接下載打好的包即可使用,將其解壓并將解壓后的文件夾放置于Nginx服務器的根目錄。然后在配置文件中加入以下內容即可:
location /rockmongo/ { alias /var/www/html/rockmongo/; index index.html index.htm index.php; } location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name; include fastcgi_params; }這里的配置和前面的Nginx設置類似,只是將路徑做了調整,并增加了PHP的解析設置。 綜上所述,配置Nginx、PHP-FPM、Rockmongo并運行,將會使你的網站管理變得更加高效便捷。