本地同步数据库之后,首页能打开,点个文章居然打不开了。开始以为是数据库的问题,后来发现不是。改了固定链接。
虚拟主机上不存在这样的问题,那么肯定是本地服务器的设置问题了。
解决方法:
这个问题通常有两个可能的原因:
一是 .htaccess文件不可写;
二是 mod_rewrite 模块没有启用。
第一个原因的解决方法:
一般本地服务器不存在这样的问题。
重设固定链接时,系统要改写.htaccess文件。如果WordPress不能自动更新.htaccess,它会告诉你原因,如.htaccess文件可写,才会自动更新。对于WordPress没有生成.htaccess文件或不将新的重写规则写到已存在的.htaccess文件,原因各种各样,按照下面的步骤,一步一步,注意,当且仅当上一步无效后再继续下一步。
(1)修改权限: 使用chmod将 .htaccess的权限改为666,以便使用template editor编辑,但是不推荐这样做,因为这样的话其他有编辑模板权限的用户也能编辑.htaccess,可以将权限改为660。
(2)服务器阻止修改: 服务器有可能阻止了SERVER_SOFTWARE变量的设置,导致生成.htaccess失败。如果确定使用的是Apache,修改wp-includes/vars.php,跟着下面的步骤走。
第二个原因的解决方法:
修改apache里面的配置文件。
这个配置文件是httpd.conf ,怎么做? 在 apache/conf 文件夹下就能找到 。
主要修改两个地方 ——
1、开启apache中的rewrite模块,在httpd.conf 中找到
#LoadModule rewrite_module modules/mod_rewrite.so
把前面的#号去掉,变成
LoadModule rewrite_module modules/mod_rewrite.so
2,开启AllowOverride ,怎么做? 也是在httpd.conf 中找到
AllowOverride None
将它改成
AllowOverride All
特别注意的是:AllowOverride可能会有好几处,只需要修改 <Directory /> 和 你站点所在的根目录的一处
如<Directory "F:/...... /www/htdocs"> 即可
如果不懂,索性将这几处全部改了 。全部改好,必须保存 并且重启apache 。
问题即可解决。