0

我的 htaccess 文件中有这个

RewriteEngine On                             
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f            #do not process for real files
RewriteCond %{REQUEST_FILENAME} !-d            #do not process for real folder
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]      #rewrite

我试图将它添加到我的 nginx 配置文件中

if (!-e $request_filename) {
    rewrite ^(.*)$ /index.php?q=$1 last;
}

在我的里面

server{...}

以有限的成功阻止,我得到

http://example.com/about/contact.html > /index.php?q=/about/contact.html

代替

http://example.com/about/contact.html > /index.php?q=about/contact.html

而且,虽然很小,但这个领先的 / 正在破坏 MODx。(即使黑客修改$_GET['q'],$_SERVER['QUERY_STRING']$_SERVER['REQUEST_URI'])

[是的,我已经重启了nginx]

4

1 回答 1

1

MODx

MODx 有一个手册页,其中包含一个适用于我的示例 nginx conf 文件;http://rtfm.modx.com/display/revolution20/Nginx+Server+Config

于 2013-02-13T09:11:33.977 回答