将请求重定向到不存在的文件到另一个目录

时间:2015-01-20 19:15:09

标签: apache .htaccess url redirect

我有一个网站,对index.html有很多请求,但我的根目录中没有这样的文件。我想将所有这些请求重定向到另一个目录中的某个文件。

另一个目录网址很长(例如:wp-content/themes/wp-mobile/...../index.html),我不希望用户直接看到这个长目录。我想提供某种短网址,例如site.com/adasd

如何使用.htaccess文件和mod-rewrite

实现此目的

1 个答案:

答案 0 :(得分:0)

首先将/index.html重定向到您选择的缩短网址

Redirect 301 /index.html /adasd

然后将缩短的URL映射到实际页面,而不重定向为

RedirectRule ^adasd/?$ /wp-content/themes/wp-mobile/...../index.html [NC,L]

您可能还需要添加以下内容以正确处理任何css,js文件引用。

RedirectRule ^adasd/(.+)$ /wp-content/themes/wp-mobile/...../$1 [NC,L]

如果加在一起,您可以将上述两条规则缩短为

RedirectRule ^adasd/?$ /adasd/index.html [NC]
RedirectRule ^adasd/(.+)$ /wp-content/themes/wp-mobile/...../$1 [NC,L]

<小时/> 试试这个:

RedirectRule ^index\.html$ /adasd [NC,L,R=301]

RedirectRule ^adasd/?$ /adasd/index.html [NC]
RedirectRule ^adasd/(.+)$ /wp-content/themes/wp-mobile/...../$1 [NC,L]