使用 .htaccess 将特定 url 重定向到另一个 url

Posted

技术标签:

【中文标题】使用 .htaccess 将特定 url 重定向到另一个 url【英文标题】:redirect a specific url to another url with .htaccess 【发布时间】:2015-10-28 00:44:28 【问题描述】:

我想要一个别名并将 URL tz433.tld/jobs/ 重定向到页面 tz433.tld/about-us/jobs/

这是我迄今为止尝试过的;它没有用:

RewriteEngine On
RewriteCond %HTTP_HOST !^www\.tz433\.tld/jobs/$
RewriteRule (.*) http://tz433.tld/about-us/jobs.html [R=301,L]

问题是,在这个根路径中有多个域,因为它是多站点typo3安装。所以像“将/jobs 重定向到/about-us/jobs”这样的东西不起作用,因为它应该只发生在特定的域(tz433)上。

下一个具体的事情是www.tz433.tld 自动重定向到tz433.tld。所以它也应该适用于www.tz433.tld/jobs/tz433.tld/jobs。两者都应该重定向到tz433.tld/about-us/jobs.html

我怎样才能成功地做到这一点?

【问题讨论】:

Redirect one url to another url using .htaccess的可能重复 【参考方案1】:

如果您希望规则仅在域为 "tz433.tld" 时执行,则需要此条件:

RewriteCond %HTTP_HOST ^(www\.)?tz433\.tld

并将 "jobs/""jobs" 重定向到 "tz433.tld/about-us/jobs.html",您可以尝试以下方法之一:

RewriteRule ^jobs/? /about-us/jobs.html [R=301,L]
# or
RewriteRule ^jobs/? http://tz433.tld/about-us/jobs.html [R=301,L]

【讨论】:

@5ervant 我也想这样做,但你的解决方案对我不起作用我正在使用 wordpress,如果它有 /for-your-practice/,我想重定向一个 url,你能告诉我什么可以吗?出问题 ?这就是我所做的RewriteRule ^for-your-practice/? /product-category/for-your-practice [R=301,L] @HabibRehman 将 www.example.com/for-your-practice/ 重定向到 www.example.com/product-category/for-your-practice 你可以使用你的指令。 (检查您的其他指令是否与该指令冲突。)将所有 www.example.com/for-your-practice/anything 页面重定向到 www.example.com/product-类别/适合您的实践您可以使用RewriteRule ^for-your-practice/(.*) /product-category/for-your-practice [R=301,L]【参考方案2】:

如果有人只对简单的重定向感兴趣,你可以试试这个:

Redirect /URL URLtoRedirect

例如

Redirect /old-url https://mywebsite.com/new-url

【讨论】:

也许我做错了,但这对我不起作用。在此之前我不需要使用重定向条件吗? @eLeMeNOhPi 不,您什么都不需要,只需将上面的代码行放入您的 htaccess 中即可。

以上是关于使用 .htaccess 将特定 url 重定向到另一个 url的主要内容,如果未能解决你的问题,请参考以下文章

如果 url 包含使用 htaccess 的特定字符串,则重定向

如果url不包含特定字符,则htaccess重定向

如何仅使用 .htaccess 将所有 url 重定向到 1 个 url

HTACCESS 重定向使用 URL 参数 ID 号范围

使用 htaccess 将一个 URL 重定向到另一个

使用 .htaccess 将 php url 重定向到另一个