我的webroot中有两个文件夹(主要和演示)。我已经使用.htacess将网站指向主文件夹。即,当我打电话给www.domain.com时,它将显示主文件夹中的内容。现在我已经建立了一个子域名www.demo.domain.com。当我访问子域名时,我收到404 Not Found错误。我真正想要的是,当调用www.domain.com时,它应该访问主文件夹中的内容。当我打电话给www.demo.domain.com时,它应该从demo文件夹中访问内容。下面是我写的htacess文件。对不起,我真的不太了解htacess。
RewriteEngine on
#if a match for asset is found, do nothing
RewriteRule ^main/ - [L]
RewriteCond %{THE_REQUEST} main/
RewriteRule ^main/(.*) http://domain.com/$1 [R=301,L]
RewriteCond %{REQUEST_URI} !main/
RewriteRule ^(.*)$ /main/$1 [L]
答案 0 :(得分:1)
尝试:
RewriteEngine On
RewriteCond %{THE_REQUEST} \ /+main/
RewriteRule ^main/(.*)$ http://domain.com/$1 [L,R=301]
RewriteCond %{THE_REQUEST} \ /+demo/
RewriteRule ^demo/(.*)$ http://demo.domain.com/$1 [L,R=301]
RewriteRule ^(main|demo)/ - [L]
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC]
RewriteRule ^(.*)$ /main/$1 [L]
RewriteCond %{HTTP_HOST} ^(www\.)?demo\.domain\.com$ [NC]
RewriteRule ^(.*)$ /demo/$1 [L]