Apache 2.4上的Symfony2,app.php上的Fedora 22:500响应,app_dev.php,config.php

时间:2015-09-13 00:17:30

标签: linux apache symfony fedora

我在本地计算机上运行多个站点进行开发,并决定让Symfony为我的下一个项目做好准备。

我在/ var / www / hfs下创建了一个新的symfony项目;我已将所有权更改为$ USER,将权限更改为755,并因此创建了虚拟主机:

<VirtualHost *:80>
    ServerName hfs.local
    ServerAlias www.hfs.local

    DocumentRoot /var/www/hfs/web

    <Directory /var/www/hfs/web>
        Require all granted

         <IfModule mod_rewrite.c>
            Options -MultiViews
            RewriteEngine On
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*)$ app.php [QSA,L]
        </IfModule>
    </Directory>

    ErrorLog /var/log/httpd/hfs_error.log
    CustomLog /var/log/httpd/hfs_access.log combined
</VirtualHost>

访问hfs.local,/ app.php,/ app_dev.php和/config.php都会返回500错误。相应的错误日志消息是:

[Sat Sep 12 18:55:54.871088 2015] [:error] [pid 7182] [client 127.0.0.1:35725] PHP Warning:  Unknown: failed to open stream: Permission denied in Unknown on line 0
[Sat Sep 12 18:55:54.871140 2015] [:error] [pid 7182] [client 127.0.0.1:35725] PHP Fatal error:  Unknown: Failed opening required '/var/www/hfs/web/app.php' (include_path='.:/usr/share/pear:/usr/share/php') in Unknown on line 0

我已经进行了双重检查,据我所知(相对较差,只在LAMP堆栈中工作了大约4个月)所有文件都应该由apache用户访问。我甚至在绝望中尝试了777

-rwxrwxrwx. 1 tyler  tyler  1182 Jul 31 08:45 app_dev.php
-rwxrwxrwx. 1 tyler  tyler 10784 Jul 31 08:45 apple-touch-icon.png
-rwxrwxrwx. 1 tyler  tyler  1014 Sep 12 19:35 app.php
drwxrwxrwx. 2 tyler  tyler  4096 Sep 12 17:09 bundles
-rwxrwxrwx. 1 tyler  tyler  5746 Jul 31 08:47 config.php
-rwxrwxrwx. 1 tyler  tyler    82 Sep 12 18:03 .directory
-rwxrwxrwx. 1 tyler  tyler  6518 Jul 31 08:45 favicon.ico
-rwxrwxrwx. 1 tyler  tyler  3320 Jul 31 08:45 .htaccess
-rwxrwxrwx. 1 tyler  tyler   106 Jul 31 08:45 robots.txt

我正在运行其他三个平板php应用程序。此外,正当理由,我已经检查过,/ usr / share / pear确实是全局可读的。

我不确定我在权限方面做错了什么,但我已经检查过symfony文档四倍,尝试将目录的所有权更改为apache用户,如果相关,则使用AllowOverride All,我告诉无法访问.htaccess文件 - 尽管具有全局读取权限。

非常感谢您的帮助,我花了几个小时进行研究,但没有找到任何帮助!感觉很像菜鸟。

编辑:为了它的价值,我在Debian安装上设置它是没有问题的。

1 个答案:

答案 0 :(得分:1)

对于Fedora来说,特别是新手,我没有遇到过SELinux。更多要学习的东西:)

我有点天真的命令进入我的外壳,感觉成功的味道如此接近。这是这些命令的组合:

chcon -R -t httpd_sys_content_t hfs
chcon -R -t public_content_rw_t hfs/app/cache
chcon -R -t public_content_rw_t hfs/app/logs
setsebool -P allow_httpd_anon_write 1

Setting permissions in Fedora Apache/PHP

Apache 403 error, (13)Permission denied: access to / denied, Fedora 16

Permission issue in cache and logs folder in Symfony 2.0