繁体   English   中英

如何使用htaccess重写根url,但保持所有子文件夹不变

[英]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.

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