Symfony 应用程序 403 禁止错误:您无权访问此服务器上的 /

Posted

技术标签:

【中文标题】Symfony 应用程序 403 禁止错误:您无权访问此服务器上的 /【英文标题】:Symfony app 403 Forbidden error: You don't have permission to access / on this server 【发布时间】:2016-10-13 07:22:06 【问题描述】:

我正在尝试在 CentOS7 linode 服务器上运行 symfony 应用程序,但出现错误:

Cannot serve directory <path to project>: No matching DirectoryIndex (index.html, index.php) 

我用这个配置为这个子域设置了一个虚拟主机:

<VirtualHost *:80>
     ServerAdmin pak11273@gmail.com
     ServerName mister
     ServerAlias project.mystuff.com
     DocumentRoot /var/www/html/project
     ErrorLog /var/www/html/project/logs/error.log
     CustomLog /var/www/html/project/logs/access.log combined
     <Directory "/var/www/html/project" >
         #Options FollowSymLinks
         Options -Indexes
         AllowOverride All
         Require all granted
     </Directory>
</VirtualHost>

我目前的设置是: 1) 我的网络服务器用户和组是 apache 2)我对 /var/www/html/project 的权限是 755 与 apache:apache

我在互联网上尝试了以下建议均无济于事:

1) 将选项 - 索引更改为选项 +索引 2) 添加 DirectoryIndex index.html 3) 如果我更改 /var 的 root 所有权,我会收到服务器错误

【问题讨论】:

你不应该指向 app.php 而不是 index.html 吗? 您是否将 Symfony 标准版附带的 web 目录替换为 project 或者 /var/www/html/project 目录是否指向您项目的根目录? @xabbuh 是正确的 - 我已经更新了我的帖子。试试看。 是的,我错过了 web 目录。它在 symfony 文档的网络服务器设置中,但我一定错过了。 @xabbuh 我是否将 Bunk 的答案标记为正确?您在评论中对我的问题给出了正确答案,但我不知道这是否解决了这个问题。 【参考方案1】:

我正在使用 CentOS 6 和 Apache。试试这个改变:

<VirtualHost *:80>
     ServerAdmin pak11273@gmail.com
     ServerName mister
     ServerAlias project.mystuff.com
     DocumentRoot /var/www/html/project/web
     ErrorLog /var/www/html/project/var/logs/error.log
     CustomLog /var/www/html/project/var/logs/access.log combined
     <Directory "/var/www/html/project/web" >
         Options Indexes FollowSymLinks MultiViews
         AllowOverride All
         Require all granted
     </Directory>
</VirtualHost>

同时验证您可以使用wgetcurl 在本地主机上获取您的 Symfony index.html 页面。 CentOS 可能启用了 SELinux 甚至 iptables。

使用sestatus 查看它是否设置为强制 - 如果是,您需要允许 web 或暂时禁用 SELinux。

xabbuh 是正确的。 “web”目录是您需要用作 Web 根目录的文件夹。如果更新我的帖子以反映所需的更改。

【讨论】:

你也可以看看this link。 你好,艾萨克。您可以通过同时选择向上箭头和绿色复选标记来标记我的。也可以看看我关于设置Apache & Symfony on RHEL 的博客,这将类似于 CentOS。我认为该博客也可以帮助您处理其他事情。 对我来说只是 AllowOverride All 需要但缺少

以上是关于Symfony 应用程序 403 禁止错误:您无权访问此服务器上的 /的主要内容,如果未能解决你的问题,请参考以下文章

MacOS XAMPP 访问禁止错误 403 - 您无权访问请求的目录

403 错误禁止您无权访问此服务器 mod_wsgi 和 apache 上的 /myapp

403 - 禁止访问: 访问被拒绝。您无权使用所提供的凭据查看此目录或页面。 怎么解决 ?

Wordpress 403 禁止“您无权访问此服务器上的 /。”

如何解决 XAMPP PHPMyAdmin 403 禁止错误

django web 服务器中的 403 禁止错误