栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

apache不能解析php文件提示403或者下载php文件

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

apache不能解析php文件提示403或者下载php文件


楼主的问题:是lamp搭建完后又重新编译apache。导致在访问php文件时无法解析提示403错误或者直接将php文件进行下载。

解决方法:将php也在重新编译。


搭建好lamp,甚是欢喜,跟着老师一步一步走终究是完成了,但是最后一步时,访问竟然是403,顿时心情极差。 明明步骤是和老师的一样,但为什么你的却是403? 下面我来分析一下出现403的可能原因!

1. /usr/local/apache2/bin/apachectl -M 看一下有没有加载libphp5.so

2. httpd.conf 中有一步至关重要的,你没有修改。
2.2版本这样修改:
vim /usr/local/apache2/conf/httpd.conf找到:

    Options FollowSymlinks
    AllowOverride None
    Order deny,allow
    Deny from all

改为:

    Options FollowSymlinks
    AllowOverride None
    Order deny,allow
    Allow from all


2.4版本的这样修改:

    AllowOverride none
    Require all denied


改为

    AllowOverride none
    Require all granted



3. 没有定义合适的index我们印象中所有网站都可以只输入一个域名就可以访问。 这是因为定义了index。
vi  /usr/local/apache2/conf/httpd.conf

    DirectoryIndex index.html


这里应该加上 index.php或者你自定义的首页

    DirectoryIndex index.html index.php


4、 还有一个不容忽视的问题,就是检查你的selinux是否开启
命令: getenforce 如果结果是 Enforcing 就说明是打开的
关闭: setenforce 0
还要在配置文件中配置一下 vi  /etc/selinux/config  把enforcing改为disabled3. documentRoot目录权限不合适
首先确定你访问你的网站对应的documentRoot是什么,比如是 /data/www
那么你要确定 httpd进程用户(查看方法是: ps aux |grep httpd, 第一列的用户就是),假如是daemon
ls -ld /
ls -ld /data/
ls -ld /data/www
分别看这些目录,daemon用户是否有x权限,还要看看 /data/www/下面的文件,daemon用户是否有读权限

5. 你设定了访问控制
我们在做实验的时候,经常会开启虚拟主机配置文件:
/usr/local/apache2/conf/extra/httpd-vhosts.conf
这里面的第一个虚拟主机(第一段 这里面的配置就是)为默认虚拟主机,关于默认虚拟主机,它有一个特性,就是无论我们配置什么域名(ServerName或者Serveralias)或者没有配置,只要我们把域名指向到该机器,只要其他虚拟主机中没有配置该域名,都会访问该虚拟主机。搞清楚了这点,我们就可以理清思路了。 我举一个案例:
你访问你的域名是 www.test.com
你的虚拟机ip是 192.168.31.110
windows的hosts文件中配置了记录: 192.168.31.100  www.test.com
而我们在浏览器访问的时候  www.test.com  出现了问题
这时候,我们就应该去查配置文件,你肯定要先确定好,你的配置文件中是否开启了虚拟主机配置文件,开启与否看/usr/local/apache2/conf/httpd.conf中这一行Include conf/extra/httpd-vhosts.conf 行首是否有警号,如果没有就是开启了。 开启了的话,我们肯定就要去 /usr/local/apache2/conf/extra/httpd-vhosts.conf 这里面查配置。 先搜索全文是否有域名 www.test.com, 有就在对应的虚拟主机配置中查。如果没有就去默认虚拟主机配置中查。 查什么? 当然是要看 你有没有配置访问控制啦。 什么是访问控制? 好好看看视频再来问。


基本上就这些。 也希望你可以通过这篇文章学到一些排查问题的思路!加油

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/227542.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号