WordPress 漂亮的永久链接故障转移 SSL - 404 文件不存在

Wordpress pretty permalinks fail over SSL - 404 File does not exist

我无法使用 Apache、Django 和 SSL 在 Ubuntu 服务器上获得 wordpress 漂亮的永久链接。如果我禁用 SSL,配置工作正常,但启用它时失败。启用 SSL 后,每个 wordpress 永久链接(不映射到物理文件)都会导致 404 和 apache 错误日志中的条目,如

File does not exist: /var/www/wpwrap/wordpress/hello-world

我已经尝试了数十种 Whosebug 和网络建议的解决方案(绝大多数用于非 SSL 设置)- 没有任何效果。我熟悉定义 Apache 配置(但不是 wordpress)并且是这台机器的管理员。

1.我的 Apache 设置

2。服务器设置

3。什么有效:

4.除了上面提到的项目之外的其他尝试:

对 404 和错误没有任何影响:

解决了。

问题是与包含另一组重写规则的 <Location> 块发生冲突。尽管规则不应该发生冲突(在正则表达式方面),但 Location 规则以某种方式阻止了 Directory 规则的执行,因此它们根本不会 运行。

基于 Apache 文档,其中指出 <Location> 块中不正式支持重写,我将所有 <Location> 重写迁移到我的 conf 中端口 80 和 443 的 <VirtualHost> 条目中。 d/my-ssl-site.conf 文件。现在一切正常。

我有所有相同的症状,发现是虚拟主机中的 SSL 块 /etc/apache2/sites-available/mysite.com.conf <VirtualHost _default_:443> 缺少目录块...

    <Directory /var/www/html/mysite.com/public_html/>
        Options -Indexes +FollowSymlinks
        AllowOverride All
        Require all granted
    </Directory>

一旦我拥有主页上的所有永久链接就开始工作:)