2017-03-05 101 views
1

我遇到问题转换应用程序.htaccess文件工作与nginx。htaccess重写为nginx配置不工作

.htaccess文件

<ifModule mod_rewrite.c> 
    Allow from 127.0.0.1 

    RewriteEngine On 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 

    RewriteRule ^index(|/)$ index.php 
    RewriteRule ^logout(|/)$ logout.php 
    RewriteRule ^keeping/([^/.]+)(|/)$ keeping.php?s=$1 
</ifModule> 

我的转换:

location/{ 
    if (!-e $request_filename){ 
     rewrite ^/index(|/)$ /index.php; 
    } 
} 
location /logout { 
    rewrite ^/logout(|/)$ /logout.php; 
} 
location /kyhsadminpanel { 
    rewrite ^/keeping/([^/.]+)(|/)$ /keeping.php?s=$1; 
} 

不起作用。

它总是显示 “404未找到” 的URL,例如/kyhsadminpanel/keeping/index/kyhsadminpanel/keeping/news ...

回答

0

您可能要注意你使用:https://winginx.com/en/htaccess

我倾向于使用:https://timmehosting.de/htaccess-converter

这是他们的结果。

if (!-d $request_filename){ 
    set $rule_0 1$rule_0; 
} 
if (!-f $request_filename){ 
    set $rule_0 2$rule_0; 
} 
if ($rule_0 = "21"){ 
    rewrite ^/index(|/)$ /index.php ; 
} 
rewrite ^/logout(|/)$ /logout.php ; 
rewrite ^/keeping/([^/.]+)(|/)$ /keeping.php?s=$1 ;