我的旧网站有网址:
domain.com/search.php?query=query
domain.com/product.php?id=id
我需要将对这些文件(仅限这些文件)的请求重定向到:
domain.com
我使用的是使用单个index.php文件的Laravel框架。
我试过了:
- 名为" search.php"的文件。和" product.php"在我的根目录中重定向用户。
- 添加到Nginx conf:
location /search.php {
return 301 http://domain.com;
)
答案 0 :(得分:0)
如果您的配置文件具有.php
文件的正则表达式位置,例如location ~ \.php$ { ... }
。除非使用^~
修饰符,否则正则表达式位置优先于前缀位置。
您有三种选择:使用完全匹配位置location =
,使用正则表达式位置,或在前缀位置使用^=
修饰符。
要匹配两个URI,我可能倾向于使用正则表达式:
location ~* ^/(search|product)\.php {
return 301 $scheme://$host/;
}
确保它位于location ~ \.php$
区块上方。
有关详细信息,请参阅this document。