繁体   English   中英

使用htaccess重写域并从URL中删除子文件夹

[英]Rewrite domain using htaccess and remove subfolder from URL

我有多个域,我想要使用.htaccess子文件夹:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?example.com$ 
RewriteCond %{REQUEST_URI} !^/subfolder/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /subfolder/$1 
RewriteCond %{HTTP_HOST} ^(www.)?example.com$ 
RewriteRule ^(/)?$ subfolder/index.html [L]

但这意味着URL仍可以包含子文件夹: example.com/subfolder/img/file.png 如何阻止/subfolder不可访问?

您需要一个新规则,才能从您的网址中删除/subfolder/ ,如下所示:

RewriteEngine on

RewriteCond %{HTTP_HOST} ^(www.)?example\.com$ 
RewriteCond %{THE_REQUEST} \s/+subfolder/(\S*)\s [NC]
RewriteRule ^ /%1 [R=302,L,NE]

RewriteCond %{HTTP_HOST} ^(www.)?example\.com$ 
RewriteCond %{REQUEST_URI} !^/subfolder/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ subfolder/$1 [L]

RewriteCond %{HTTP_HOST} ^(www.)?example\.com$ 
RewriteRule ^/?$ subfolder/index.html [L]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM