gpt4 book ai didi

apache - 禁止访问 您无权访问此服务器。 Centos 6/Laravel 4

转载 作者:行者123 更新时间:2023-12-03 03:01:37 24 4
gpt4 key购买 nike

在完成 LAMP 设置并安装 Laravel 4 应用程序后,我遇到了问题。一切似乎都很顺利,当我进入我的 IP 地址 url 时,它正确地显示了我的应用程序的第一页,但该页面的所有其余部分都向我抛出 404 错误,在此服务器上找不到请求的 URL。

所以我添加到我的httpd.conf(在我的项目的虚拟主机下)-允许覆盖全部订单允许、拒绝

<VirtualHost *:80>
ServerName VPS-IP-ADDRESS
DocumentRoot /var/www/html/nextmatch/public_html/public/

<Directory /var/www/html/nextmatch/public_html/public/>
AllowOverride all
Order allow,deny
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
</Directory>
</VirtualHost>

现在,当我尝试导航时,出现 404 错误,我收到了 Forbidden您无权访问此服务器。我设置了chmod 775 -R path/laravel/和 777 的文件夹存储,但我仍然遇到相同的错误,有什么建议吗?我无法弄清楚这个问题,我快疯了!感谢您的帮助。

最佳答案

网络服务器作为特定用户下的守护程序(服务)启动。该用户在 httpd.conf 中定义。默认情况下该用户是 apache。不要将 apache 用户与 httpd 进程混淆。后者是一个网络服务器守护进程,前者是它将运行的用户。如果您创建的文件夹属于 root 或除 httpd.conf 中定义的用户以外的用户,那么 apache 将无法访问它。识别此问题的方法是进入该文件夹并执行 ls -l。如果 httpd.conf 中定义的用户是 apache,那么为了让它访问该文件夹,您应该看到:

drwxr-xr-x.  2 apache apache    4096 Jan  8  2013 public_folder

注意,它说“apache apache”,这意味着它属于 apache 用户和组。如果您通过 root 创建它,那么您可能会看到:

drwxr-xr-x.  2 root root    4096 Jan  8  2013 public_folder

apache用户无法访问root定义的文件夹。要解决此问题,请运行命令:

chown -R apache:apache myfolder

-R 选项是递归的,因此它将将该文件夹中的所有文件夹和文件的所有权更新给 apache 用户。

如果你的所有权没问题,那么尝试“暂时”关闭selinux。在 centos 上你可以:

setenforce 0

这将关闭selinux直到下次重新启动。理想情况下,您需要保留 selinux 以提高安全性,并为您的 apache 文件和文件夹设置有效的上下文。

如果关闭 selinux 确实有效,那么您的文件和文件夹的安全上下文可能是错误的。运行以下命令来恢复您的安全上下文:

restorecon -R -v /var/www/

关于apache - 禁止访问 您无权访问此服务器。 Centos 6/Laravel 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21498904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com