1樓:吊打肥仔凶
安裝nginx+php後,php頁面訪問時提示404,但頁面是存在的,應該是下面的原因造成的:
這個是因為index.html 檔案目錄是nginx預設安裝目錄 /usr/local/nginx/html,而info.php 把它放到了 /data/web 下造成的,可以在nginx.
conf配置文件裡面找到相應的問題。
可以按照下面測試更改:
location ~ \.php$
nginx -t && nginx -s reload
nginx+php的執行原理:
nginx的worker程序直接管理每一個請求到nginx的網路請求。
對於php而言,由於在整個網路請求的過程中php是一個cgi程式的角色,所以採用名為php-fpm的程序管理程式來對這些被請求的php程式進行管理。php-fpm程式也如同nginx一樣,需要監聽埠,並且有master和worker程序。worker程序直接管理每一個php程序。
關於fastcgi:fastcgi是一種程序管理器,管理cgi程序。市面上有多種實現了fastcgi功能的程序管理器,php-fpm就是其中的一種。
php-fpm作為一種fast-cgi程序管理服務,會監聽埠,一般預設監聽9000埠,並且是監聽本機,也就是隻接收來自本機的埠請求,所以通常輸入命令netstat -nlpt|grep php-fpm 會得到:
tcp 0 0 127.0.0.
1:9000 0.0.
0.0:* listen 1057/php-fpm
這裡的127.0.0.1:9000 就是監聽本機9000埠的意思。
關於fastcgi的配置檔案,fastcgi的配置檔案一般放在nginx.conf同級目錄下,配置檔案形式,一般有兩種:fastcgi.
conf 和 fastcgi_params。不同的nginx版本會有不同的配置檔案,這兩個配置檔案有一個非常重要的區別:fastcgi_parames檔案中缺少下列配置:
fastcgi_param script_filename $document_root$fastcgi_script_name;
可以開啟fastcgi_parames檔案加上上述行,也可以在要使用配置的地方動態新增,使該配置生效。
當需要處理php請求時,nginx的worker程序會將請求移交給php-fpm的worker程序進行處理,也就是最開頭所說的nginx呼叫了php,其實嚴格得講是nginx間接呼叫php。
2樓:
location ~ \.php$
重啟試試
3樓:匿名使用者
root html; 這行配置成絕對路徑
4樓:匿名使用者
rewrite規則看下
用php設定header返回404 但是頁面空白 是不是和php.ini/nginx有關
5樓:朱李燁
404 not found
未找到該網頁,說明此網頁已經在伺服器被刪除或被改名。在安全助手裡新增黑名單,把這個**的**輸入進去。不讓他彈出。
404是對not found這種錯誤情況的一個編碼,http協議的錯誤資訊在不同軟體、不同的語言描述可能不同,但是其**是統一的,以便瀏覽器能夠正確識別和處理。
處理PHP動態頁面,Apache還是Nginx好?
mapn 這個不錯,前端是nginx處理靜態檔案,後端是apache處理php動態程度。如果不是因為我部署環境太廢勁,我會全換成這個的。是建議1g 256或者512的跑都沒問題的128的沒試過。nginx php好,還是nginx apache php好 要看你實際運用在那些地方,nginx不自帶解...
php登入頁面的是怎麼做的,php製作登入頁面
session star if isset session login status 不存在就直接login頁面,你可以在每個頁頭載入這個來判斷 header location login.php username post name pass post password sql select fr...
如何製作php登陸介面,php登入頁面的是怎麼做的
如果你要的只是介面,那麼我給你一個好的建議。你可以去bootstrap官網這個裡面去找你想要的元件。做出很炫的登入介面。並且提供源 凡事多動手,不要只會照搬。我給你源 你也不會做。所以,你還是多去看看如何寫。如果,你要的是原始碼,那麼你也可以去thinkphp官網去看看。有很多很不錯的 值得學習。登...