在我的网站上,所有图片/样式表都在/ CMS / ...目录中。最近,我们的网站转移到新服务器的临时网址,他们引用了/ newdirectory / CMS /...
我们如何将/ newdirectory /追加到所有/ CMS /来电?
答案 0 :(得分:11)
在 .htaccess 文件
内RewriteEngine On
RewriteCond %{REQUEST_URI} !^/newdirectory/CMS/
RewriteRule ^(.*)$ /newdirectory/CMS/$1
这将执行重写,因此访问 http://www.server.com/CMS/index.html 实际上将提供 http://www.server的内容。 COM / newdirectory / CMS / index.html中
注意:此解决方案假定CMS是此域的唯一服务。
如果此域的服务超过CMS(并且只应重定向CMS),则以下内容可能会更好:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/CMS/
RewriteRule ^(.*)$ /newdirectory/$1
答案 1 :(得分:4)
您不需要RewriteRule(或mod_rewrite)。您可以使用简单的RedirectMatch:
RedirectMatch ^/CMS/(.*) http://tempserver.com/newdirectory/CMS/$1
答案 2 :(得分:1)
我建议使用mod_rewrite,大多数apache / linux服务器都有。在您网站的docroot中创建一个名为.htaccess的文件,其内容为:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^/CMS/(.*)$ /newdirectory/CMS/$1 [QSA]
</IfModule>
此方法将使其对最终用户透明,不会影响当前的pagerank,SEO等值,并且将保留所有入站链接。