您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么解決nginx不能運行php文件的問題”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么解決nginx不能運行php文件的問題”吧!
nginx不能運行php文件的解決辦法:首先找到“php-fpm.conf”,并把“listen”項配置好;然后在nginx里面把相應配置換過來即可。
本文操作環境:linux5.9.8系統、PHP7.1版,DELL G3電腦
nginx不能運行php文件怎么辦?nginx php-fpm 配置不當,引起的php文件無法執行
很久沒去自己的網站,今天去看發現報50x的錯誤。
網站是用nginx服務的。
網上很多情況是因為nginx配置中
location ~ .php$ { # root html; #fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
這一部分出問題,關鍵字搜索出來的問題比較集中是對
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
這個部分配置錯誤的說明。
但是我的配置是正確的。
我在服務器上
service php-fpm status
提示正常運行。
php ./index.php
也能正常執行。
問題鎖定在
fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
也就是說nginx找不到php-fpm來執行.php腳本。
那么php-fpm.sock,具體在哪里,
那是要根據php-fpm.conf中的設置決定的。
上網換了關鍵字搜索終于找到一些有用的信息
fastcgi_pass的設置是要根據php-fpm.conf中的 里面的對listen設置來決定。
好的接下來的問題就是找到php-fpm.conf,并把listen項配置好
有的服務器并不會在php-fpm.conf中直接給出設置,
但是有這么一句
include=/etc/php-fpm.d/*.conf
那么我們就去對應的php-fpm.d目錄去找conf
我的是www.conf
終于發現里面的
listen = /var/run/php-fpm/php-fpm.sock
然后到nginx里面把相應配置換過來就好了。
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
網上很多是
fastcgi_pass unix:/var/run/php-fpm.sock;
這個具體要根據自己php-fpm.conf里面的對php-fpm.sock設置來定的。
問題記錄一下,遇到問題別慌,多思考,多搜索,你能發現很多精彩的東西。
搜索要帶著思考的,如果一味的鉆死胡同,永遠找不到答案,分析問題的能力就得不到提高了。
感謝各位的閱讀,以上就是“怎么解決nginx不能運行php文件的問題”的內容了,經過本文的學習后,相信大家對怎么解決nginx不能運行php文件的問題這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。