我真的需要帮助。坐了好久还是没弄明白。
我想实现一个非常简单的任务 - 将一个不存在的 php 文件重写为另一个存在的 php 文件,所有参数如下:
this http://example.com/nonexistent.php?url=google.com
to -> http://example.com/existent.php?url=google.com
我尝试了这样的事情:
rewrite ^/nonexistent.php /existent.php;
不起作用(文件未找到)。但可以将不存在的 html 文件重定向到 php 文件,如下所示:
rewrite ^/nonexistent.html /existent.php;
作品。
我不想重写 html 文件,但这仍然是一种令人困惑的行为。
因此它也尝试了类似这样的操作(以及一些变化):
rewrite ^/nonexistent.php?url=^(.*)$ /existent.php?url=$1;
这也不起作用。(可能是语法不好)
有什么帮助吗?太好了!
答案1
location = /nonexistent.php {
rewrite ^ /existent.php last;
}