本地XAMPP部署WordPress子页面跳转异常求助
解决WordPress迁移本地XAMPP后子页面跳转错误的问题
1. 修正WordPress站点URL配置
方法一:通过phpMyAdmin修改数据库
- 访问
localhost/phpmyadmin打开XAMPP的数据库管理工具,找到你的WordPress数据库 - 定位到
wp_options表(若数据库前缀不是wp_,替换为实际前缀) - 找到
option_name为siteurl和home的两行,将它们的option_value全部修改为http://localhost/project/ - 保存修改
方法二:通过wp-config.php硬编码(更稳妥)
- 打开
C:/xampp/htdocs/project/wp-config.php文件 - 在
/* That's all, stop editing! Happy publishing. */之前添加以下代码:
define('WP_SITEURL', 'http://localhost/project/'); define('WP_HOME', 'http://localhost/project/');
- 保存文件,此配置会直接覆盖数据库中的URL设置,避免缓存或主题插件干扰
2. 配置正确的.htaccess文件
- 替换
C:/xampp/htdocs/project/.htaccess的内容为以下代码:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /project/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /project/index.php [L] </IfModule> # END WordPress
- 重点确保
RewriteBase /project/和最后一行的RewriteRule . /project/index.php [L]配置正确,这会让Apache的重写规则基于/project/目录生效
3. 确认Apache配置允许.htaccess生效
- 打开XAMPP的Apache主配置文件
C:/xampp/apache/conf/httpd.conf - 找到以下段落:
<Directory "C:/xampp/htdocs"> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride None Require all granted </Directory>
- 将
AllowOverride None修改为AllowOverride All,确保Apache读取.htaccess中的重写规则 - 同时确认
mod_rewrite模块已开启:找到#LoadModule rewrite_module modules/mod_rewrite.so,去掉前面的#注释 - 重启XAMPP的Apache服务,使所有配置生效
内容的提问来源于stack exchange,提问作者sreesreejuks
相关产品推荐
相关产品推荐

