Url 使用end参数重写Nginx

Url 使用end参数重写Nginx,url,nginx,rewriting,Url,Nginx,Rewriting,我怎样才能为我的网站的每一页重写这个东西 http://example.org/page.php?locale=en 到 我的配置部分: if ($host !~* ^www\.){ rewrite ^(.*)$ https://www.example.org$1; } rewrite ^/([0-9a-zA-Z--]+)$ /$1.php last; 谢谢。类似于: Rewrite ^/page.php?id=(.*)$ /$1/page.php; 这对您

我怎样才能为我的网站的每一页重写这个东西

http://example.org/page.php?locale=en

我的配置部分:

   if ($host !~* ^www\.){
        rewrite ^(.*)$ https://www.example.org$1;
    }

rewrite ^/([0-9a-zA-Z--]+)$ /$1.php last;
谢谢。

类似于:

Rewrite ^/page.php?id=(.*)$ /$1/page.php;

这对您有用吗?

尝试将其添加到位置块中

rewrite ^/([^/])(/.*) $2?locale=$1&$query_string last;
如果您只有特定的区域设置,那么出错的空间就会更小,例如,您可以用类似这样的内容替换正则表达式

rewrite ^/([en|fr|de])(/.*) $2?locale=$1&query_string last;

区域设置是否始终可用?在URL的第二部分?它不工作,404错误当我尝试在每个页面上你可以添加您的配置到您的问题我已经添加了部分可能会导致问题
rewrite ^/([en|fr|de])(/.*) $2?locale=$1&query_string last;