Apache/2.4.29 (Ubuntu) 服务器在端口 443 上用于 wordpress

Kis*_*ore 1 apache wordpress ubuntu amazon-ec2 amazon-web-services

在 Ubuntu 18.04 上的 AWS 中安装 Let's encrypt 证书后,我在 Wordpress 中遇到错误。在此处输入图片说明

如何解决这个问题?

仅用于博客的 .htaccess 示例文件我正在使用 Wordpress,正在加载 Wordpress 索引页面但帖子页面显示 404 错误

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
Run Code Online (Sandbox Code Playgroud)

Kis*_*ore 6

获取问题的解决方案,需要在apache2.conf文件中更改后才能工作,

旧代码 /etc/apache2/apache2.conf

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>
Run Code Online (Sandbox Code Playgroud)

改变成

 <Directory /var/www/>
            Options Indexes FollowSymLinks
            AllowOverride All
            Require all granted
    </Directory>
Run Code Online (Sandbox Code Playgroud)

之后,为了让Apache理解重写规则,我们首先需要激活mod_rewrite。它已经安装,但在默认的 Apache 安装中被禁用。使用 a2enmod 命令启用模块:

$ sudo a2enmod rewrite
Run Code Online (Sandbox Code Playgroud)

这将激活模块或提醒您该模块已启用。要使这些更改生效,请重新启动 Apache。

$ sudo systemctl restart apache2
Run Code Online (Sandbox Code Playgroud)

它终于对我有用了。