在.htaccess
文件中,重定向和重写是两种不同的概念。重定向是将用户从一个URL引导到另一个URL,而重写是在服务器端将一个URL转换为另一个URL,但用户看到的仍然是原始URL。
如果你想在.htaccess
文件中实现重定向而不是重写,可以使用Redirect
指令。以下是一些示例:
如果你想将一个URL永久重定向到另一个URL,可以使用Redirect 301
指令:
Redirect 301 /old-page.html /new-page.html
这条规则会将所有对/old-page.html
的请求永久重定向到/new-page.html
。
如果你想将一个URL临时重定向到另一个URL,可以使用Redirect 302
指令:
Redirect 302 /old-page.html /new-page.html
这条规则会将所有对/old-page.html
的请求临时重定向到/new-page.html
。
如果你想将整个目录重定向到另一个目录,可以使用以下规则:
RedirectMatch 301 ^/old-directory/(.*)$ /new-directory/$1
这条规则会将所有对/old-directory/
下的请求重定向到/new-directory/
下的相应路径。
如果你想重定向带参数的URL,可以使用RedirectMatch
指令:
RedirectMatch 301 ^/old-page\.html\?param=value$ /new-page.html
这条规则会将所有对/old-page.html?param=value
的请求重定向到/new-page.html
。
.htaccess
文件位于网站的根目录下,或者你已经在Apache配置中启用了.htaccess
覆盖。通过使用这些Redirect
指令,你可以在.htaccess
文件中实现所需的重定向功能。
领取专属 10元无门槛券
手把手带您无忧上云