переписывание URL — переписать URL не работает в основном проекте php localhost

Я должен сделать свой URL дружественным.

У меня есть это в моем .htaccess файл:

RewriteRule http://localhost/test/client/this_is_test_page.php$ http://localhost/test/test-page [NC,R=301,L]

но теперь я получаю HTTP 500 внутреннюю ошибку сервера.

Что может быть причиной этого, и как я могу это исправить?

0

Решение

Вы не должны иметь HTTP_HOST в своем шаблоне в соответствии с документацией apache:

RewriteRule состоит из трех аргументов, разделенных пробелами.
Аргументы:

  1. Шаблон: на какие входящие URL должно влиять правило;
  2. Замена: куда должны быть отправлены соответствующие запросы;
  3. [флаги]: параметры, влияющие на переписанный запрос.

Шаблон — это регулярное выражение. Это изначально (для первого
переписать правило или пока не произойдет подстановка) сопоставляется с
URL-путь входящего запроса (часть после имени хоста но
перед любым знаком вопроса, указывающим на начало строки запроса)

Ваше правило должно быть примерно таким:

RewriteRule /test/client/this_is_test_page.php$ /test/test-page [NC,R=301,L]

И вы должны иметь mod_rewrite включен, RewriteEngine On а также AllowOverride,

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]