简单的nginx重定向.php到主页

我的旧网站的网址如下:</ p>

domain.com/search。 php?query = query

domain.com/product.php?id = id </ p>

我需要将请求重定向到这些文件(并且只有这些文件):</ p >

domain.com </ p>

我正在使用使用单个index.php文件的Laravel框架。</ p>

I 尝试过:</ p>

- 在我的根目录中放置名为“search.php”和“product.php”的文件,重定向用户。</ p>

- 添加到Nginx conf:</ p>

  location /search.php {
return 301 http://domain.com;


</ code> </ pre>
</ div>

展开原文

原文

My old website had urls like:

domain.com/search.php?query=query
domain.com/product.php?id=id

I need to redirect requests to these files (and only these files) to:

domain.com

I'm using the Laravel framework that uses a single index.php file.

I've tried:

-Placing files named "search.php" and "product.php" in my root directory that redirects the user.

-Adding to Nginx conf:

location /search.php {
    return 301 http://domain.com;     
)

dongxian3852
dongxian3852 location~/search.php{return301domain.com;}
4 年多之前 回复

1个回答



如果您的配置文件具有 .php </ code>文件的正则表达式位置,例如 location~ \ .php $ {...} </ code>。 除非使用 ^〜</ code>修饰符,否则正则表达式位置优先于前缀位置。</ p>

您有三个选项:使用完全匹配位置 location = </ code>,使用正则表达式位置,或在前缀位置使用 ^ = </ code>修饰符。</ p>

要匹配两个URI,我可能倾向于使用 正则表达式:</ p>

  location〜* ^ /(search | product)\ .php {
return 301 $ scheme:// $ host /;
}
< / code> </ pre>

确保它位于位置〜\ .php $ </ code>块之上。</ p>

参见本文档了解详情。</ p>
</ div>

展开原文

原文

If your configuration file has a regex location for .php files, such as location ~ \.php$ { ... }. The regex location takes precedence over prefix locations, unless the ^~ modifier is used.

You have three options: use an exact match location location =, use a regex location, or use the ^= modifier on a prefix location.

To match two URIs, I might be inclined to use a regex:

location ~* ^/(search|product)\.php {
    return 301 $scheme://$host/;
}

Make sure it is placed above the location ~ \.php$ block.

See this document for details.

doushi9856
doushi9856 谢谢!! 希望我能投票,但我是一个菜鸟:(
4 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问