繁体   English   中英

将这些Apache重写规则转换为Nginx

[英]convert these apache rewrite rules to nginx

我在将这些重写规则转换为nginx时遇到了麻烦;

RewriteRule ^$ requesthandlers/controller.php?page=route [QSA,NC,L]
RewriteRule ^route[/]?$ requesthandlers/controller.php?page=route [QSA,NC,L]
RewriteRule ^board[/]?$ requesthandlers/controller.php?page=board [QSA,NC,L]
RewriteRule ^settings[/]?$ requesthandlers/controller.php?page=settings [QSA,NC,L]
RewriteRule ^stations[/]?$ requesthandlers/controller.php?page=stations [QSA,NC,L]
RewriteRule ^route/(.*)/(.*)/$ requesthandlers/controller.php?page=routeresult&from=$1&to=$2 [QSA,NC,L]
RewriteRule ^board/([^/]*)/$ requesthandlers/controller.php?page=boardresult&station=$1 [QSA,NC,L]
RewriteRule ^board/([^/]*)/(.*)/$ requesthandlers/controller.php?page=boardresult&station=$1&destination=$2 [QSA,NC,L]

现在我有以下几行:

rewrite ^/?$                    /requesthandlers/controller.php?page=route                                      last;
rewrite ^/route/?$              /requesthandlers/controller.php?page=route                                      last;
rewrite ^/board/?$              /requesthandlers/controller.php?page=board                                      last;
rewrite ^/settings/?$           /requesthandlers/controller.php?page=settings                                   last;
rewrite ^/stations/?$           /requesthandlers/controller.php?page=stations                                   last;
rewrite ^/route/(.*)/(.*)/?$    /requesthandlers/controller.php?page=routeresult&from=$1&to=$2                  last;
rewrite ^/board/(.*)/?$         /requesthandlers/controller.php?page=boardresult&station=$1                     last;
rewrite ^/board/(.*)/(.*)/?$    /requesthandlers/controller.php?page=boardresult&station=$1&destination=$2      last;

但是,尽管我没有收到任何错误,但它们似乎无法正常工作。

rewrite ^/$ /requesthandlers/controller.php?page=route last;
rewrite ^/(route|board|settings|stations)(?:/|)$ /requesthandlers/controller.php?page=$1 last;
rewrite ^/route/([^/]+)/([^/]+)(?:/|)$ /requesthandlers/controller.php?page=routeresult&from=$1&to=$2 last;
rewrite ^/board/([^/]+)(?:/|)$ /requesthandlers/controller.php?page=boardresult&station=$1 last;
rewrite ^/board/([^/]+)/([^/]+)(?:/|)$ /requesthandlers/controller.php?page=boardresult&station=$1&destination=$2 last;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM