![](/img/trans.png)
[英]htaccess deny all at root, allow access matching url after a rewrite
[英]how to rewrite root url with htaccess but leave all subfolders untouched
我正在尝试重写网站的根URL,但是我需要将子文件夹中存储的所有内容都保留在相同的地址...到目前为止,我所拥有的是
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/stockroom
RewriteRule ^(.*)$ http://newsite.com/$1 [R=301,L]
</IfModule>
# END WordPress
它可以正常工作,但出现错误,因为oldsite.com/stockroom的iframe无法显示,因为它是从oldsite.com/magazzino/index.php中选取的,而后者已在newsite.com/magazzino/index.php中打开
编辑:我的问题是/ stockroom页面加载了错误:[错误]拒绝在框架中显示' http://newsite.com/magazzino/index.php ',因为它设置了'X-Frame-Options'到“ SAMEORIGIN,SAMEORIGIN”。 (关于:空白,第0行)。 当然,这取决于以下事实:iframe的url由htaccess规则重写,但是不应该! 应该是http://oldsite.com/magazzino/index.php ...我想念什么?
我是htaccess的新手,非常感谢您的帮助。
最好的问候,西蒙妮
如果您不希望所有文件夹都被重定向,则可以更改正则表达式模式:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/stockroom
RewriteRule ^([^/]*)$ http://newsite.com/$1 [R=301,L]
</IfModule>
[^/]*
表示不是 /
任意数量的字符。 因此,没有文件夹将被重定向。
尝试以下规则:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/(stockroom|magazzino/) [NC]
RewriteRule ^(.*)$ http://newsite.com/$1 [R=301,L]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.