我已经设置了新的 Ubuntu 16.04-x86_64 VPS,并将我的 WP 网站从 Centos 6 VPS 转移过来。
一切都很顺利,只是我无法让 WP 中的永久链接正常工作。我尝试了所有能想到的方法。已经忙了好几天了!配置、重新配置、搜索、更改、重新启动 Apache2 和 VPS 好像有 200 次了 - 但毫无效果。有东西告诉我我在这里遗漏了一些非常明显的东西。mod_rewrite 已启用并正在运行。
我使用命令行和 Filezilla SFTP 进行操作。以下是我的配置文件
如有任何建议,请发送邮件至:TIA。
/etc/apache2/apache2.conf
Options Indexes FollowSymLinks MultiViews
# changed from None to FileInfo
AllowOverride FileInfo
Require all granted
root@server1:~# sudo a2enmod rewrite
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "en_AU.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Module rewrite already enabled
.htaccess 设置为 666。WP 位于 /en 文件夹中
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /en/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /en/index.php [L]
</IfModule>
# END WordPress
答案1
安装 Apache 时,默认情况下不启用 mod rewrite。您可能需要在终端中输入以下命令来启用 mod rewrite:
sudo a2enmod rewrite
欲了解更多信息,请查看 https://www.techiediaries.com/wordpress-permalinks-not-working-404-error/。
答案2
当我将我的一些网站转移到另一台服务器时,我也遇到过同样的问题。
这是我所做的。编辑您的文件apache2.conf
夹/etc/apache2/
。
运行以下命令:
nano /etc/apache2/apache2.conf
向下滚动并查找带有评论的此部分:
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.
确保这是其中的一个:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
简而言之,同意它。为了您的永久链接不失败。
-戴夫