怎么通过.htaccess将一级目录变成二级域名

<IfModule mod_rewrite.c>
RewriteEngine on
# 要绑定的二级域名  
RewriteCond %{HTTP_HOST} ^gou.liuxuesheng8.com$  

RewriteCond %{REQUEST_URI} !^/gou/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /gou/$1 

#这里改成要绑定的二级域名和要绑定的子目录  
RewriteCond %{HTTP_HOST} ^gou.liuxuesheng8.com$  
RewriteRule ^(/)?$ gou/index.php [L]

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

这样写对吗,目的是要把liuiuxuesheng8.com/gou/一级目录变成二级域名gou.liuxuesheng8.com

阅读 3.4k
1 个回答

试一下下面的规则:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?liuiuxuesheng8\.com$
RewriteRule ^/gou(/.*)?$ http://dir.domain.com$1 [R=301,L]

注意规则中的 (/.*)?$ 它会匹配 0 或 1个域名结尾的斜杠(/)

liuiuxuesheng8.com/gou -> gou.liuiuxuesheng8.com
liuiuxuesheng8.com/gou/ -> gou.liuiuxuesheng8.com/
liuiuxuesheng8.com/gou/index.php -> gou.liuiuxuesheng8.com/index.php

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题