dist-upgrade debian 7 升级到 8 后 mod rewrite 不起作用

dist-upgrade debian 7 升级到 8 后 mod rewrite 不起作用

我需要将服务器上的 Debian 操作系统版本从 7 升级到 8。因此我这样做了:

  • aptitude update
  • aptitude upgrade 获得最新的 wheezy 软件包,然后
  • 在 /etc/apt/source.list(以及其他 source.list.d/ 文件)中将 wheezy 改为 jessie
  • aptitude update
  • aptitude dist-upgrade
  • 我重启了服务器

然后我使用新的配置扩展名更改了我的 vhost 文件名:

/etc/apache2/sites-available/mydomain 到 /etc/apache2/sites-available/mydomain.conf

这是一个例子:

<VirtualHost *:80>
        ServerName mydomain
        DocumentRoot /var/www/mydomain/web
        <Directory /var/www/mydomain/web>
            Options Indexes Multiviews FollowSymLinks
            AllowOverride all
            Require all granted
        <IfModule mod_rewrite.c>
            Options -MultiViews
            RewriteEngine On
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*)$ app.php [QSA,L]
        </IfModule>
        </Directory>
        ErrorLog ${APACHE_LOG_DIR}/error-mydomain.log
        CustomLog ${APACHE_LOG_DIR}/access-mydomain.log combined
</VirtualHost>

然后我重新启动了 apache 服务

在这种情况下,该网站是可以访问的,但是,由于重写规则不适用,它无法正常工作!

尽管,

  • 我检查了 apache 配置没有错误
  • mod_rewrite 模块处于活动状态(它位于 /etc/apache2/mods-enabled/ 和 phpinfo() 中)

  • 我还尝试删除<IfModule mod_rewrite.c>vhost 中的语句,保留重写规则并重新加载配置:未遵循规则。

  • 我还尝试将重写规则放在网站根目录的 .htaccess 中:但效果不佳

这是最令人不安的。

可能是什么问题?我应该检查哪个日志或配置文件?将 Debian 7 升级到 8 时,我还应该执行与重写模块相关的其他步骤吗?

谢谢

答案1

我有同样的问题,但我找到了答案。

去:

/etc/apache2/sites-available/

并编辑你的 vhosts 文件(我的文件名为 000-default.conf)

你必须添加这个

允许覆盖全部

或者

允许覆盖文件信息

例子:

<VirtualHost *:80>
<Directory />
        AllowOverride All
</Directory>
ServerName tududu.pl
DocumentRoot /var/tududu
</VirtualHost>

之后你必须

service apache2 restart

相关内容