使用 .htaccess 重定向到另一个 url 中的 url
Redirect to url within another url using .htaccess
我有问题,我需要将用户重定向到 url 中的 URL。
例如:
当用户访问URL时:api.example.com/redirect/www.google.com
我希望用户被重定向到:www.google.com
我已经尝试了一段时间了,但是没有成功。
您可能正在寻找类似的东西:
主要 http 服务器配置的变体:
RewriteEngine on
RewriteRule ^/redirect/(.+)$ http:// [L,R=301]
.htaccess
样式文件的变体:
RewriteEngine on
RewriteRule ^redirect/(.+)$ http:// [L,R=301]
显然需要重写模块在您的本地 http 服务器中可用。
一般来说,您应该更愿意将此类规则放入主服务器配置中,如果您可以访问它。 .htaccess
样式文件仅应在您别无选择时使用。原因是这样的文件是出了名的容易出错,难以调试,而且确实会减慢 http 服务器的速度。
一种更可靠的方法是获取 url 的捕获部分并将其作为参数传递给服务器端的脚本。该脚本可以验证该部分,它是否是有效的 "url"(这里为了简单起见...)。并且可能会发出 head 请求以检查目标是否存在并且可用。只有这样它才会重定向。否则它 returns 一个有意义的错误信息。
我有问题,我需要将用户重定向到 url 中的 URL。
例如: 当用户访问URL时:api.example.com/redirect/www.google.com
我希望用户被重定向到:www.google.com
我已经尝试了一段时间了,但是没有成功。
您可能正在寻找类似的东西:
主要 http 服务器配置的变体:
RewriteEngine on
RewriteRule ^/redirect/(.+)$ http:// [L,R=301]
.htaccess
样式文件的变体:
RewriteEngine on
RewriteRule ^redirect/(.+)$ http:// [L,R=301]
显然需要重写模块在您的本地 http 服务器中可用。
一般来说,您应该更愿意将此类规则放入主服务器配置中,如果您可以访问它。 .htaccess
样式文件仅应在您别无选择时使用。原因是这样的文件是出了名的容易出错,难以调试,而且确实会减慢 http 服务器的速度。
一种更可靠的方法是获取 url 的捕获部分并将其作为参数传递给服务器端的脚本。该脚本可以验证该部分,它是否是有效的 "url"(这里为了简单起见...)。并且可能会发出 head 请求以检查目标是否存在并且可用。只有这样它才会重定向。否则它 returns 一个有意义的错误信息。