Ryuzaki Yamamoto
Ryuzaki Yamamoto

Reputation: 11

htaccess rewrite to nginx config not working

I'm having a problem converting an appache .htaccess file work with nginx.

The .htaccess file

<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>

My Conversion:

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

doesn't work.

It always shows "404 not found" for url's such as /kyhsadminpanel/keeping/index and /kyhsadminpanel/keeping/news...

Upvotes: 1

Views: 1194

Answers (1)

Barkermn01
Barkermn01

Reputation: 6842

You might want to note you used: https://winginx.com/en/htaccess

I tend to use: https://timmehosting.de/htaccess-converter

Here is the result from them.

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 ;

Upvotes: 1

Related Questions