![](/img/trans.png)
[英]PHP htaccess Redirect url with query string from uppercase to lowercase
[英]Redirect a query string url to another url in .htaccess PHP?
我想重定向
至
https://exmaple.com/uploads/cms_files/GENERAL-TERMS-AND-CONDITIONS.pdf
通过在核心php中使用.htaccess文件,但由于我的URL中有?query,所以它没有重定向,但是问号后的值没有键。
有人可以帮助我如何在.htaccess中重定向此URL吗?
您所要求的直接实现是:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^docs/GENERAL_TERMS_AND_CONDITIONS\.pdf$
RewriteRule ^/?uploads/cms_files/GENERAL-TERMS-AND-CONDITIONS\.pdf https://example.com/uploads/cms_files/GENERAL-TERMS-AND-CONDITIONS.pdf [R=301,QSD]
该规则将在http服务器主机配置和动态配置文件( .htaccess
)中同样起作用。 如果决定使用动态配置文件,则必须注意完全启用了其解释( AllowOverride
指令),该文件可被http服务器进程读取,并且位于http内的正确位置。托管文档文件夹。
但是,为什么还要重写它呢? 如果存在可以使用该URL请求的对象,则可以简单地忽略查询字符串...
还有一个一般性提示:您应该始终喜欢将此类规则放置在http服务器(虚拟)主机配置中,而不是使用动态配置文件( .htaccess
样式文件)。 众所周知,这些文件容易出错,难以调试,并且确实降低了服务器的速度。 仅当您无法控制主机配置(阅读:真正便宜的托管服务提供商)或者您的应用程序依赖于编写自己的重写规则(这显然是安全噩梦)时,才将它们作为最后一个选项来支持。 )。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.