为以前没有接触过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