如何停用WordPress子目录站点以释放URL给主站页面?
解决WordPress主站页面与子目录站点URL冲突的方案
方法1:通过子目录.htaccess实现URL跳转(推荐)
子目录存在时,服务器会优先加载子目录内容,直接在子目录的.htaccess里设置跳转,把请求导去主站对应页面:
- 用FTP进入目标子目录(比如
/test1),找到.htaccess文件(没有的话就新建一个) - 写入以下代码:
RewriteEngine On RewriteRule ^(.*)$ https://mainsite.com/test1 [R=301,L]
这样访问mainsite.com/test1时会直接301跳转到主站的/test1页面,子目录的WordPress安装保留不动,只是无法通过原URL访问。
方法2:修改主站.htaccess,强制优先解析主站页面
如果不想用跳转,想让主站页面直接接管这个URL,调整主根目录的.htaccess规则优先级:
- 打开主站根目录的
.htaccess,在默认的WordPress重写规则前面添加:
RewriteEngine On RewriteRule ^test1/?$ /index.php?pagename=test1 [L]
把test1替换成你要使用的页面别名,pagename=test1对应主站页面的slug。这样服务器会优先把/test1的请求交给主站处理,跳过子目录的加载。
方法3:临时重命名子目录(零风险操作)
直接通过FTP把子目录(比如/test1)改个名字(比如/test1-old),系统就检测不到同名目录了,此时在主站创建页面就能直接设置固定链接为/test1。之后如果需要恢复子站,改回原名即可。
关于之前wp-config修改无效的说明
你之前添加的WP_HOME和WP_SITEURL会让子站指向主站,但子站的主题、插件资源路径还是指向原目录,所以会出现无样式的加载异常。这个方法不适合用来停用子站,建议把那两行代码从子目录的wp-config.php里移除。
内容的提问来源于stack exchange,提问作者Arthur
相关产品推荐
相关产品推荐

