Centos下Apache整合Tomcat访问报Forbidden 403 错误的解决方法

Posted lie隼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos下Apache整合Tomcat访问报Forbidden 403 错误的解决方法相关的知识,希望对你有一定的参考价值。

在进行Apache与Tomcat整合实现动态静态资源分离是遇到了一个问题,当请求由Apache的80端口进行监听处理的时候页面元素、格式大量丢失,而用tomcat的8080端口进行处理的时候就不存在这个问题。思前想后打开chrome调试,发现请求的资源包括图片、css、JS的响应码全都是403,由此想到应该是Apache的权限有问题,最后修改了资源路径的权限解决了这个问题。结合网上资料和自己的实际情况总结了以下常见的原因:

  1. 由于修改了Apache配置文件的默认站点路径,但是没有对修改后的路径的权限许可

    解决方法,找到配置文件中修改的路径的位置,将配置文件修改为如下格式:

    <Directory "your_path">
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
  2. 站点目录下没有该文件,也就是路径有误

    解决方法:检查输入路径是否存在错误,所访问的页面是否存在。

  3. Apache用户无站点路径的访问权限 

    查看站点路径的所有者,发现所属用户和用户组均为root

    [[email protected] webapps]# ls -la
    total 352864
    drwxr-xr-x.  6 root root        87 May 15 07:06 .
    drwxr-xr-x.  3 root root        71 May 15 09:27 ..
    drwxr-x---. 11 root root      4096 May 14 03:16 FTMS
    -rw-r--r--.  1 root root  72365363 May 14 03:16 FTMS.war
    drwxr-x---.  3 root root      4096 May 15 07:58 ROOT

     

    而在Apache的配置文件中发现Apache的用户和用户组均为apache

    # User/Group: The name (or #number) of the user/group to run httpd as.
    # It is usually good practice to create a dedicated user and group for
    # running httpd, as with most system services.
    #
    User apache
    Group apache

     

    站点目录需要apache的用户有访问权限,于是将该目录的所有权改为apache

    解决方法:进入站点目录,修改权限

    [[email protected] webapps]# chown -R apache:apache .
    [[email protected] webapps]# ls -la
    total 352864
    drwxr-xr-x.  6 apache apache        87 May 15 07:06 .
    drwxr-xr-x.  3 root   root          71 May 15 09:27 ..
    drwxr-x---. 11 apache apache      4096 May 14 03:16 FTMS
    -rw-r--r--.  1 apache apache  72365363 May 14 03:16 FTMS.war
    drwxr-x---.  3 apache apache      4096 May 15 07:58 ROOT

    通过上述方法,可解决部分该类型的问题。

以上是关于Centos下Apache整合Tomcat访问报Forbidden 403 错误的解决方法的主要内容,如果未能解决你的问题,请参考以下文章

tomcat 和 apache 整合后利用Tomcat 进行URL重写

solr: centos中, 整合 tomcat

Centos tomcat+apache双web环境的整合编译

IIS+tomcat整合,并且通过域名访问网站[2]

Apache Tomcat 整合

tomcat 和 apache 整合后利用Tomcat 进行URL重写