'nginx重写'到'.htaccess重写'

时间:2014-06-19 10:26:29

标签: apache nginx rewrite

我在regexp中非常糟糕,但在服务器配置中我是最糟糕的。 所以任何帮助都会有用。

在nginx-config

中有这样的内容
location / {
    rewrite ^(.*[^/])$ $1/ permanent;
    try_files $uri $uri/ /index.php?$args;
}

对于.htacces需要EQUAL的东西。 TY。

1 个答案:

答案 0 :(得分:1)

他们应该证明非常相似。

<IfModule mod_rewrite.c>
    RewriteEngine On
    # Your web directory root
    RewriteBase /

    #Make sure it's not a specific file or directory that they're trying to reach
    RewriteCond %{SCRIPT_FILENAME} !-f
    RewriteCond %{SCRIPT_FILENAME} !-d

    RewriteRule ^(.*[^/])$ index.php?args=$1 [NC, L]
</IfModule>

这将:

  1. Mark RewriteEngine on .htaccess所在的文件夹(如果您已启用该模块);
  2. 如果文件是服务器上的目录或文件,请指定避免重定向的条件;和
  3. 将您的正则表达式重定向到index.php?args = {正则表达式捕获的所有内容}
  4. [NC,L]标志告诉规则区分大小写,并告诉Apache这是最后一个重定向规则。

    我必须承认,我不确定你的Regex正在测试什么。您是否介意解释您想要实施的URL方案?我应该能够帮助你正确地制定正则表达式。