.htaccess RewriteRule works on one page not another (PHP upgrade)

604 views Asked by At

I have a website on which .htaccess is used. I tried to move this site to another server, but found, that some RewriteRules are not working.

My .htaccess file content is below:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^checkout/?$ index.php?c=order&a=checkout&%{QUERY_STRING} [L]
...

This rule is working on the current server (PHP 5.6), but isn't working on new server (PHP 7.4).
The rule should rewrite url:
https://mywebsite.com/checkout/?pm=CreditCard&brand=MasterCard&paymentMethodId=1\
to:
https://mywebsite.com/index.php?c=order&a=checkout&pm=CreditCard&brand=MasterCard&paymentMethodId=1

The text in bold should be copied from the first URL, but it only shows index.php file on a new server (sessions and cookies are cleaned / incognito, I'm not logged).

Is there something changed in the newest PHP version? or what can I do to make it work? :)

0

There are 0 answers