遷移官網商城的發現主頁的二級界面顯示空白頁,此https商城網站
后修改nginx配置,顯示正常
添加
location ~ [^/]\.php(/|$) {
#fastcgi_pass remote_php_ip:9000;
fastcgi_pass unix:/dev/shm/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
這個配置的意思是 在瀏覽器中訪問的.php文件,實際讀取的是 $document_root(網站根目錄)下的.php文件 -- 也就是說當訪問127.0.0.1/index.php的時候,需要讀取網站根目錄下面的index.php文件,如果沒有配置這一配置項時,nginx不回去網站根目錄下訪問.php文件,所以返回空白
nginx+php四個常見、重要的配置項
fastcgi_pass
作用:nginx本身不處理php請求,配置文件中將.php結尾的請求通過FashCGI交給PHP-FPM處理,PHP-FPM是PHP的一個FastCGI管理器
作用域:location, if in location
設置FastCGI服務,其值可以是一個域名、IP地址:端口、或者是一個Unix的Socket文件。
Nginx連接fastcgi的方式有2種:TCP和unix domain socket
TCP是使用TCP端口連接127.0.0.1:9000
Socket是使用unix domain socket連接套接字/dev/shm/php-cgi.sock(很多教程使用路徑/tmp,而路徑/dev/shm是個tmpfs,速度比磁盤快得多)