在MAMP本地主机部署两个WordPress站点遇问题求助
在MAMP中迁移根目录WordPress到子文件夹后的问题修复方案
1. 补全数据库URL配置
- 登录phpMyAdmin,找到对应站点的数据库,打开
wp_options表(如果你的表前缀不是wp_,换成实际前缀) - 把
siteurl和home两个字段的值都改成http://localhost:8888/你的子文件夹名(比如文件夹叫site1,就填http://localhost:8888/site1) - 别只改一个,两个必须同步,之前可能漏改了其中一个导致问题
2. 更新子文件夹里的.htaccess
- 进入子文件夹,找到
.htaccess(没显示的话,在MAMP里开启隐藏文件显示) - 把里面的重写规则换成适配子文件夹的版本,记得替换
你的子文件夹名:
# 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
3. 修正MAMP默认站点指向
- 打开MAMP偏好设置,切换到
Apache标签 - 确认
Document Root指向的是htdocs根目录,不是你移进去的子文件夹 - 重启Apache服务,这时访问
localhost:8888应该显示根目录的文件列表,不会自动跳转到子站点了
4. 清理缓存(如果有装缓存插件)
- 要是之前装了缓存插件,比如WP Rocket、W3 Total Cache,要么手动删除wp-content/cache文件夹里的内容,要么去数据库删除缓存相关的表
- 也可以临时在wp-config.php里加
define('WP_CACHE', false);禁用缓存,修好后再改回来
5. 检查Apache重写模块
- 要是wp-admin还是404,打开MAMP的Apache配置文件(httpd.conf),找到
#LoadModule rewrite_module modules/mod_rewrite.so,把前面的#删掉,重启Apache
内容的提问来源于stack exchange,提问作者Aadya Khanna
相关产品推荐
相关产品推荐

