我到处寻找解决方案,但找不到我想要的确切解决方案。我不擅长htaccess的东西。需要一些帮助。
我已经在我的htaccess文件中强制执行“www”,当我尝试创建子域时,它已经开始了。
我正在使用此设置,我发现它到目前为止它的工作正常,没有子域。
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{HTTP_Host} ^(www\.)?example\.net$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
创建子域后,在前面添加“www”并重定向到主站点而不是子域。
For example: folder.domain.com -> becomes -> www.folder.domain.com (displayes the main site)
在此htaccess中我需要进行哪些修改?
顺便说一下,我的主站点是在codeigniter中,我也有这个:
RewriteCond $1 !^(index\.php|js|media|style)
RewriteRule ^(.*)$ /index.php/$1 [L]
想在子文件夹上安装博客并将其用作子域名。
简单方法是修改(添加“博客”)
RewriteCond $1 !^(index\.php|js|media|style|blog)
RewriteRule ^(.*)$ /index.php/$1 [L]
然后我访问它为www.domain.com/blog
但我希望它整洁干净,以便控制器创建的URL不会与子文件夹冲突。可能不允许直接访问子文件夹。
由于
答案 0 :(得分:2)
你的规则如下:
RewriteCond %{HTTP_HOST} ^mainsite\.com$ [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{HTTP_Host} ^(.+?)\.net$ [NC]
RewriteRule ^(.*)$ http://%1.com/$1 [L,R=301]
答案 1 :(得分:0)
我找到了解决方案。也可能对其他人有帮助。
我做了修改
RewriteCond %{HTTP_HOST} !^www\.
到
RewriteCond %{HTTP_HOST} ^mainsite\.com$ [NC]
Anubhava
建议然后改变了
RewriteRule ^(.*)$ /index.php/$1 [L]
到
RewriteRule ^(blog.*)$ /index.php/$1 [L]
对于“.net”到“.com”子域重定向,我添加了
RewriteCond %{HTTP_Host} ^(blog\.)?mainsite\.net$ [NC]
RewriteRule ^(.*)$ http://blog.mainsite.com/$1 [L,R=301]
并在我的主机中添加了托管域名。
现在一切都很完美。
谢谢!