Я переместил свой сайт с локального на сервер, и правила переписывания в моем .htaccess не работали.
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^contact-us$ index.php?p=2
</IfModule>
Это то, что есть в моем .htaccess.
НоЯ уверен, что .htaccess распознается сервером (я проверил, поместив мусор в .htaccess - у меня ошибка сервера).
Для дальнейшей диагностики проблемы я изменил свой .htaccess, как показано ниже:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^contact-us$ index.php?p=2
RewriteRule contact-us$ index.php?p=2
RewriteRule ^contact-us index.php?p=2
RewriteRule contact-us index.php?p=2
</IfModule>
Теперь я получаю странную ошибку при посещении моего site.com/contact-us
Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0
Fatal error: Unknown: Failed opening required 'redirect:/index.php' (include_path='.:/usr/lib64/php:/usr/lib/php') in Unknown on line 0