Could you help me to write nginx rewite rules for activecampaign at present they only have a apache rewrite rules which to be put in .htaccess
cat .htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# KB
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/kb
RewriteRule . /kb/index.php [L]
# KB DESKS WITHOUT SLASHES
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/desk/([^/]+)/kb$
RewriteRule (.*) $1/ [R=301,L]
# KB DESKS
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/desk/([^/]+)/kb
RewriteRule desk/([^/]+)/kb(.*) /kb$2 [L]
# HD DESKS WITHOUT SLASHES
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/desk/([^/]+)$
RewriteRule (.*) $1/ [R=301,L]
# HD DESKS
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/desk/([^/]+)
RewriteRule desk/([^/]+)(.*) $2 [L]
# HD
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
i have tried something but it does`nt work
##1 kb
location /kb {
if (!-f $request_filename) {
rewrite . /index.php last;
}
if (!-d $request_filename) {
rewrite . /index.php last;
}
if ( $request_uri) {
rewrite . /index.php last;
}
}
##2 KB DESKS WITHOUT SLASHES
location /desk {
if (!-f $request_filename) {
rewrite (.*) $1/ permanent;
}
if (!-d $request_filename) {
rewrite (.*) $1/ permanent;
}
if ( ^/([^/]+)/kb$ $request_uri) {
rewrite (.*) $1/ permanent;
}
}
location /desk {
if (!-f $request_filename) {
rewrite /([^/]+)/kb(.*) /$2 last;
}
if (!-d $request_filename) {
rewrite /([^/]+)/kb(.*) /$2 last;
}
if ( /([^/]+)/kb $request_uri) {
rewrite /([^/]+)/kb(.*) /$2 last;
}
}
#3 HD DESKS WITHOUT SLASHES
location /desk {
if (!-f $request_filename) {
rewrite (.*) $1/ last;
}
if (!-d $request_filename) {
rewrite (.*) $1/ last;
}
if ( ^/([^/]+)$ $request_uri) {
rewrite (.*) $1/ last;
}
}
#4 HD DESKS
location /desk {
if (!-f $request_filename) {
rewrite /([^/]+)(.*) $2 last;
}
if (!-d $request_filename) {
rewrite /([^/]+)(.*) $2 last;
}
if ( ^/([^/]+ $request_uri) {
rewrite /([^/]+)(.*) $2 last;
}
}
# 5 HD
location / {
if (!-f $request_filename) {
rewrite . /index.php last;
}
if (!-d $request_filename) {
rewrite . /index.php last;
}
}
Share