我有一个网站让我们说http://myweb.com我希望将其迁移到根目录http://myweb.com/subfolder/
的子文件夹中我需要以下内容,我想使用htaccess文件:
1)将所有非www重定向到www 2)将根目录中的所有文件重定向到子文件夹中的等效文件,同时将所有htm扩展名更改为html,即根文件中的文件必须重写为子文件夹中的文件,如subfolder / file.html 3)我希望在地址中仍然显示www.myweb.com而不是www.myweb.com/subfolder
一切皆有可能吗?如何?谢谢你的回答
答案 0 :(得分:1)
将这些规则添加到文档根目录中的htaccess:
RewriteEngine On
# 1) Redirect all non-www to www
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]
# 2) Redirect all files in the root to equivalent files in the subfolder
# at the same time changing all htm extension to html
RewriteCond %{REQUEST_URI} !^/subfolder/
RewriteRule ^(.*)\.htm$ /subfolder/$1.html [L]
RewriteCond %{REQUEST_URI} !^/subfolder/
RewriteRule ^(.*)$ /subfolder/$1 [L]
最后一条规则没有R
标志,因此它们不会导致外部重定向(从而改变浏览器URL地址栏中的内容)。