升级到Ubuntu 13.10后,对于laravel项目,Apache出现403错误

时间:2013-10-20 19:14:13

标签: apache ubuntu laravel

我升级到Ubuntu 13.10。最初在更新后运行apache时,有丢失/损坏的文件,所以我只是重新安装了apache。我备份了vhost文件。

尝试从浏览器访问我的Laravel项目时,会收到403错误。我已经多次更改了根文件夹的权限,但仍然是禁止的。我不相信这是一个laravel问题,因为我已经在13.04修复了它,并且我使用相同的文件。

这是我的000-default.conf文件,位于/ sites-enabled和/ sites-available中。自安装以来,我的apache2.conf文件没有改变。

<VirtualHost *:80>
    DocumentRoot /home/brennan/development/MasonACM/public

    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>

    <Directory /home/brennan/development/MasonACM/public/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log
    LogLevel warn
    CustomLog /var/log/apache2/access.log combined
</VirtualHost>

同样重要的是要注意我的.htaccess文件没有丢失,并且自从该网站在13.04上工作以来没有被更改。

更新:

我现在有apache的主机设置工作,但现在浏览器显示index.php的实际代码,这意味着apache由于某种原因没有使用php。我刚刚检查过php是否安装了,为什么apache不会识别它?

3 个答案:

答案 0 :(得分:53)

Apache2可能也已升级到版本2.4,有几点需要注意。

首先,你现在有Apache 2.4.x +吗?通过运行检查:

$ apache2 -v

如果是这样,你的虚拟主机需要进行一些调整:

首先:+/-选项:

某些Options参数需要+/-语法。 Read more here。当在某些指令上混合+/-时,这可能尤为重要(请阅读上一个链接以了解更多信息)。

变化:

Options Indexes FollowSymLinks MultiViews

为:

Options +Indexes +FollowSymLinks +MultiViews

第二:允许/拒绝

Apache现在通过mod_authz_host

进行访问控制

变化:

Order allow,deny
Allow from all

为:

Require all granted

upgrading from Apache 2.2 to 2.4上的更多信息。

答案 1 :(得分:2)

我遇到了同样的问题,出于某种原因,用Sudo重新启动Apache有所不同。 mods是否重写并且mcrypt健康?

答案 2 :(得分:0)

我遇到了一个问题,在路由文件(web.php)中,我有两条路由(相同的链接),但是控制器的动作不同。第二个动作为空,这就是空白的原因。

例如:

Route::get('/route', 'Controller@firstAction');
Route::get('/route', 'Controller@secondAction');