安裝nginphp後php頁面訪問時提示404但頁面是

時間 2021-10-14 20:23:57

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註冊頁面提交成功後如何 跳轉成功頁面

header location vip.php 使用者名稱的話就要用sql查詢資料庫裡面的名字,然後對比,不對的話在重試 if insert sql 省略.echo else php表單提交成功後如何跳轉到指定頁面? php表單提交成功後,最好有個判斷是否成功,成功才跳轉可以設定一個變數 resul...

php如何跳轉頁面傳陣列,php 如何定義一個陣列?

後臺 data array 這裡放你查的資訊 echo json encode data 返回一個json資料 前臺處理下就行了 育知同創教育 php跳轉頁面傳陣列的方法 1 將陣列轉化成字串,用特殊字元如 將陣列的元素隔開,用普通的字串引數傳遞 2 使用json方式傳遞引數 解析c 後臺得到的是個...

我在用zend studio執行PHP頁面時出現問題

1.安裝apche php並開啟服務 2.將寫好的 放到txt中,儲存為php3.開啟ie 輸入你檔案的路徑就可以了 注 初學不久,錯誤勿惱。山寨小王 樑志遠 朋友,你的問題解決了嗎?你可以建一個儲存空間,因為你的安裝不是預設儲存在apache下的,還有就是你把埠號加上,一定要啊!否則就時你的這種錯...