我在 WordPress 中遇到永久链接问题,不能在本地主机上工作,但在服务器上工作得很好。我也是 wordpress 开发人员,多次遇到这些问题。你能帮我解决这个问题吗?
谢谢
我在 WordPress 中遇到永久链接问题,不能在本地主机上工作,但在服务器上工作得很好。我也是 wordpress 开发人员,多次遇到这些问题。你能帮我解决这个问题吗?
谢谢
如果您使用的是 ubuntu 系统,那么您需要为您的设置启用 apache2 mod_rewrite。试试这个命令
sudo a2enmod rewrite
您将收到如下消息:
Enabling module rewrite.
To activate the new configuration, you need to run:
service apache2 restart
现在输入此命令以重新启动您的 apache 网络服务器。
sudo service apache2 restart
这应该可以解决您的问题。如果问题仍然存在,那么您需要更改 apache 配置文件 ( apache2.conf
):
$ sudo gedit /etc/apache2/apache2.conf
<directory>
为您的 localhost 根目录路径搜索模型。Web 服务器根路径可能非常基于您安装的 apache 版本。可能是<Directory /var/www/>
或<Directory /var/www/html/>
。它主要如下:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
更改AllowOverride None
为AllowOverride All
。保存并关闭文件。重新启动您的 apache 网络服务器
sudo service apache2 restart
如果您在 Windows 上使用 WAMP,请转到通知并单击 WAMP 图标,然后转到 Apache -> Apache Modules 并检查rewrite_module
。
如果您将 wordpress 实例从服务器复制到本地计算机,通常您需要重置永久链接。只需转到永久链接设置屏幕并点击保存。这通常对我有用。
如果你使用 Mac OSX,你有
sudo nano /etc/apache2/httpd.conf
搜索以下字符串:
#LoadModule rewrite_module libexec/apache2/mod_rewrite.so
删除“#”号
现在,搜索
<Directory />
AllowOverride None
Require all denied
</Directory>
并替换AllowOverride None
为AllowOverride All
最后搜索该部分Document Root
并在该部分内替换AllowOverride None
为AllowOverride All
您的本地服务器是否运行 Apache2?你启用了 mod_rewrite 吗?因为这是你需要让永久链接工作的东西。好吧,这是一回事,之后启用重新启动 apache2。然后检查您的.htaccess
文件是否配置正确。您是否在子域中的子文件夹中有 WordPress?
这些是我为解决此问题所做的事情。
更改设置>永久链接>选择“默认”>保存
修复一些 php 语法错误(请参阅 apache 错误日志)
从您要迁移的 wordpress 站点的根目录中获取相同的 .htaccess
在目录中的apache2.conf中>添加此> Allowoverride ALL