為以前沒有接觸過nginx ,所以查了一天,查處原因有二:
一、網站根目錄
默認是在 /usr/local/nginx/html文件
配置在
location / {
root /home/www/wwwroot;
index index.html index.htm;
}
二、修改文件中對應的php配置部分
location ~ \.php$ {
root /home/www/wwwroot;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
特別需要注意的是:fastcgi_param這個參數默認的是$fastcgi_script_name;最好改為$document_root$fastcgi_script_name;我在實際配置中出現了php找不到需要解析文件而返回404或者500錯誤的問題。所以最好是帶上網站根目錄的路徑變數$document_root
② linux apache不能解析php文件,訪問後出現的是源代碼,什麼原因啊
沒有載入PHP模塊或者是MIME類型沒填對,PHP文件被當成了純文本文件提供下載而不執行裡面的代碼。Apache本身是不具備執行PHP代碼的能力的,需要把PHP當成Apache的一個模塊來載入來解析PHP文件。你看看apache的配置文件httpd.conf是否有類似的內容,C:/php-5.3.5 是我電腦上的PHP安裝目錄,你要改成自己電腦的路徑
#添加PHP模塊
LoadMole php5_mole C:/php-5.3.5/php5apache2_2.dll
#指定PHP程序的根目錄
PHPIniDir "C:/php-5.3.5"
#添加MIME映射,讓apache把PHP文件當成代碼文件來執行
AddType application/x-httpd-php .php .phtml
感覺LZ是初學者,不會配置PHP運行環境的話,建議你搜一下XAMPP,這個是Linux下的PHP傻瓜包,直接把Apache, PHP,MYSQL 等全部自動部署好了。
③ linux apache不能解析php文件,訪問後出現的是源代碼,什麼原因啊你怎麼解決的,我的在IP地址訪問PHP沒
phpinfo函數可能正確輸出?
如果能正確輸出信息,那apache就能正常解析php文件
如果不能,那就是你php環境沒弄好
④ linux下php環境搭建,在linux下將apache,php,mysql,都裝了,還是不能解析php文件
Apache的配置文件你設置了解析php沒有?conf/httpd.conf文件,在最後添加:
PHPIniDir "d:/web/php"
LoadMole php5_mole "d:/web/php/php5apache2_2.dll"
AddType application/x-httpd-php .php
-----------
上面的代碼只是一個參考,你具體按照你的路徑填寫即可
⑤ 在LINUX下安裝好LAMP後,用瀏覽器訪問php文件,為何是下載,而不解釋呢
裝好LAMP環境後,還要做下整合Apache與PHP相關配置,在apache配置文件里找到:
AddType application/x-gzip .gz .tgz
在該行下面添加
AddType application/x-httpd-php .php
添加默認的php首頁,找到:
DirectoryIndex index.html
將該行改為:
DirectoryIndex index.html index.htm index.php