修改固定链接为.html后WordPress文章出现404错误求助
针对你在HostGator子域名上遇到的.html固定链接404问题,试试以下几个解决方案:
手动替换.htaccess内容
先备份当前的.htaccess文件,然后将内容替换为WordPress标准重写规则:# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress注意:如果你的WordPress安装在子域名的子目录中(比如
public_html/blog/),需要将RewriteBase /改成RewriteBase /blog/。修正.htaccess权限
把权限从666改成更安全的644,HostGator对过高权限的文件可能会有访问限制。改完后回到WordPress后台的「设置-固定链接」页面,不用修改结构,直接点击「保存更改」,让系统重新生成规则。确认mod_rewrite模块已启用
HostGator默认开启mod_rewrite,但可以自行验证:创建一个info.php文件,内容为<?php phpinfo(); ?>,上传到子域名根目录后访问,搜索「mod_rewrite」,如果能找到说明模块正常;如果没有,联系HostGator客服开启。检查子域名文档根目录
登录HostGator的cPanel,进入「子域名」管理,确认你的子域名对应的文档根目录是WordPress的安装目录(比如子域名blog.yourdomain.com对应public_html/blog/),路径错误会导致系统找不到文章文件。排查插件冲突
暂时禁用所有WordPress插件,刷新文章页面测试。如果404消失,再逐个启用插件,找到导致冲突的那个并处理(更新、替换或卸载)。重置固定链接结构
先切换到「朴素」固定链接结构(格式为?p=ID),保存设置;然后再改回/%year%/%monthnum%/%postname%.html并保存,强制WordPress重新生成重写规则。
内容的提问来源于stack exchange,提问作者KVM

