如何移除WordPress链接中的index.php并解决404错误?
移除WordPress链接中的index.php(Apache环境)
启用Apache Rewrite模块
打开Apache的主配置文件(如httpd.conf或apache2.conf),找到LoadModule rewrite_module modules/mod_rewrite.so这一行,确保行首没有注释符号#。修改后重启Apache服务生效。配置目录权限与
.htaccess文件
确保WordPress站点目录(此处为/gis)具备读写权限,让Apache能生成或修改.htaccess文件。如果目录下没有.htaccess,手动创建一个并设置权限为644。添加Rewrite规则到
.htaccess
在.htaccess中写入以下规则,注意RewriteBase要匹配你的站点目录:# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /gis/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /gis/index.php [L] </IfModule> # END WordPress更新WordPress固定链接设置
登录WordPress后台,进入「设置」→「固定链接」,选择「文章名」或自定义结构/%postname%/(确保已移除index.php),点击「保存更改」。排查虚拟主机配置
若仍出现404错误,检查Apache虚拟主机的<Directory>配置块,确保设置了AllowOverride All(而非AllowOverride None),示例:<Directory "/你的服务器路径/gis"> AllowOverride All Require all granted </Directory>修改后重启Apache再次测试。
内容的提问来源于stack exchange,提问作者hazzeeleen
相关产品推荐
相关产品推荐

