centos6.9配置LAMT页面500错误解决

阿拉做实验的时候在CentOS7上配置LAMT正确,在CentOS6.9上却总是显示500错误。二者配置文件除主机名外一模一样。配置文件如下:

ServerName      cet7.magedu.com
        DocumentRoot    /usr/local/tomcat/webapps/ROOT
        ProxyRequests   Off
        ProxyVia        On
        ProxyPreserveHost On
        
                Require all granted
        
        ProxyPass / http://127.0.0.1:8080/
        ProxyPassReverse / http://127.0.0.1:8080/
        
                Require all granted

查看CentOS76.9的错误日志则有如下信息: >[Sat Nov 25 10:59:25 2017] [crit] [client 172.17.200.216] configuration error: couldn't perform authentication. AuthType not set!: / [Sat Nov 25 10:59:25 2017] [crit] [client 172.17.200.216] configuration error: couldn't perform authentication. AuthType not set!: /favicon.ico,referer: http://172.17.6.6/

阿拉开始认准了是模块加载的错,然而主配置文件改了又改,日志里的报错却始终不变。哎,真是,只有问题解决后,才意识到自己的思路跑的多偏。

couldn't perform authentication. AuthType not set!的意思是————无法执行身份验证。AuthType没有设置。

后来模块加载上阿拉实在不知道还能怎么改动了。才开始谨慎研究报错信息。排错时期的干扰因素总结如下:

  1. CentOS6.9使用httpd -M显示的模块比CentOS7.3少的多,然而二者配置文件里模块加载的部分差别并不大。且Centos6.9使用httpd -M死活不显示proxy_http_module及proxy_ajp_module等模块。
  2. 虽然启动的是用yum安装的httpd,但阿拉的CentOS6.9上还编译安装了httpd-2.4.28,httpd -v显示的是‘Apache/2.4.28’,yum info httpd则显示‘Version : 2.2.15’。阿拉直到最后才发现httpd -v显示的版本不是当前服务所使用的httpd的版本。百度有人说版本差异注释掉Require all granted会解决500错误。当时阿拉在并未意识到自己的版本差的情况下有病乱投医的试了,然并卵,没起到丝毫作用。
  3. 配置文件里关于/的设置。报错有提到这个,阿拉理所当然的在上面浪费了大量时间。

最后要说的是在这些干扰存在的情况下,阿拉看到知乎上有说给虚拟主机的根目录加了个 Satisfy Any,然后阿拉就试了。配置好的文件如下:

[root@cet6 httpd]# cat conf.d/http-tomcat.conf 

        ServerName      cet6.magedu.com
        DocumentRoot    /usr/local/tomcat/webapps/ROOT
        ProxyRequests   Off
        ProxyVia        On
        ProxyPreserveHost On
        
                Require all granted
        
        ProxyPass / http://127.0.0.1:8080/
        ProxyPassReverse / http://127.0.0.1:8080/
        
                Satisfy Any
                Require all granted

这个配置chrome相当给情面的弹出了tomcat的小黄喵来,不过此时,阿拉已经没有一身轻松的惬意了,不如说,阿拉很愤怒。

在开始排错的时候,阿拉就知道是httpd不能正确解析.jsp的主页面,然而这问题并没有引起阿拉足够的重视。结果兜兜转转也不过如此。

不及格啊,这职业素养。

又被自己气的不想吃饭了!

相关文章

有时候CentOS工作在无互联网的环境下,需要在离线环境下安装一些组件,这次实现的是模拟在离线环境下安...
首先参照https://www.cnblogs.com/wdw984/p/13330074.html,来进行如何安装Centos和离线下载rpm包。 离...
有两个.NET CORE3.1网站部署在CentOS7上(内网IP是192.168.2.32),现在想实现访问http://192.168.2.32...
1、yum -y install vsftpd 安装vsftpd 2、配置vsftpd的配置文件(/etc/vsftpd/vsftpd.conf)主要修改以...
首先去mysql官网下载mysql的离线rpm安装包(https://downloads.mysql.com/archives/community/) Mysql...
第一步下载erlang环境并安装: wget https://packages.erlang-solutions.com/erlang/rpm/centos/7/x86_...