将yii2网站从Windows迁移到linux,断开链接

时间:2017-10-17 19:36:12

标签: php linux yii2 apache2

最近我将开发框从windows改为linux。我试图在我的linux(薄荷18.2)盒子上设置一个yii2网站。以前我的网站运行在带有xampp的Windows 7盒子上。

这是我薄荷盒上的虚拟主机文件(/etc/apache2/site-available/tripcopilot.com)。

bool

我还将以下行添加到我的主机文件

<VirtualHost *:80>

    ServerAdmin mine@email.com
    ServerName mysite.dev
    ServerAlias www.mysite.dev
    DocumentRoot /var/www/mysite/web

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

然后我使用

启用了网站
127.0.0.1    mysite.dev

到目前为止,通过此设置,我可以访问我的浏览器,http://mysite.dev将我带到我的主页,但当我尝试导航到网站上的任何其他页面时,我找不到&#34;页面# 34;错误。

我认为这可能与我使用漂亮网址的事实有关...这是我在yii2中的urlmanager组件设置

a2ensite mysite.dev.conf

在此之后,我检查了我的apache设置,看看是否允许.htaccess文件。这是当前的设置(/etc/apache2/apache2.conf)。

'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            'enableStrictParsing' => false,
            'rules' => [
                "home" => "site/index",
                "login" => "site/login",
                "sign-up" => "site/sign-up",
                "search" => "site/search"
            ],
        ],

所以我把它改成了以下

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

但是现在当我去mysite.dev时,我得到一个&#34;内部服务器错误&#34;。这是/var/log/apache2/error.log

中的日志条目
<Directory /var/www/>
    Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
</Directory>

我的设置中有什么我忘了做的吗?任何帮助将不胜感激。感谢

1 个答案:

答案 0 :(得分:0)

您需要启用重写模块。这在许多发行版中随附apache2,但默认情况下未启用。这应该有帮助

sudo a2enmod rewrite
sudo systemctl restart apache2.service