如何通过.htaccess为特定URL切换Drupal与WordPress根目录?
实现特定URL跳转至WordPress的.htaccess配置方案
完全可行,只需在Drupal目录的.htaccess文件中添加优先执行的重写规则,同时调整WordPress的路径配置即可解决问题,具体步骤如下:
1. 修改Drupal目录下的.htaccess
打开/web/drupal/.htaccess,在文件最顶部添加以下规则(必须放在Drupal自带规则之前,确保优先执行):
RewriteEngine On # 将所有/special/开头的请求转发到WordPress目录 RewriteRule ^special/(.*)$ ../wordpress/$1 [L]
^special/(.*)$:匹配URL中以/special/开头的所有路径,(.*)捕获后续所有字符作为变量../wordpress/$1:将请求指向WordPress目录的对应路径(../表示从Drupal目录回到上级的/web/目录)[L]:标记为最后一条规则,停止后续Drupal规则的处理,避免被Drupal拦截
2. 配置WordPress路径适配
为了让WordPress正确识别自身运行在/special/路径下,需要调整其配置:
方法一:通过后台设置
登录WordPress后台,进入设置→常规:
- 将「WordPress地址(URL)」设置为
http://example.com/special - 将「站点地址(URL)」设置为
http://example.com/special
保存设置后,WordPress生成的链接、资源路径都会自动适配/special/前缀。
方法二:修改wp-config.php
如果无法登录WordPress后台,可直接编辑/web/wordpress/wp-config.php,在文件末尾添加以下代码:
define('WP_HOME', 'http://example.com/special'); define('WP_SITEURL', 'http://example.com/special');
3. 验证配置
完成上述步骤后,清除浏览器缓存,访问http://example.com/special/variablename即可直接加载WordPress对应的内容,不会再跳转至Drupal。
内容的提问来源于stack exchange,提问作者user25227429
相关产品推荐
相关产品推荐

