Вот мой текущий код:
RewriteCond %{HTTP_HOST} !^example\.com [NC]
#RewriteCond %{REQUEST_URI}!^something
RewriteCond %{HTTP_HOST} ^([^.]+)\.example\.com
RewriteRule (.*) something/%1/$1 [QSA,L]
Моя цель - переписать http://*.example.com/whatever
в http://example.com/something/*/whatever
, предполагая, что *
одинаково для обоих, а whatever
одинаково для обоих. Тем не менее, я считаю, что это как-то вызывает бесконечный цикл, поэтому я добавил закомментированную строку (RewriteBase - / btw), но если я раскомментирую, тогда весь сайт представляет собой код ответа 500. Без этой строки только ошибка поддоменов.
Что я делаю не так, и как я могу это исправить? Я уже настроил сервер, чтобы все перенаправлялось в мою папку public_html.
РЕДАКТИРОВАТЬ: Для пояснения я пытаюсь сделать внутреннее перенаправление, а не внешний.
РЕДАКТИРОВАТЬ: Кажется, нет флага для внутреннего перенаправления. Есть ли место, где я могу увидеть фактическое сообщение об ошибке для сломанной rewriterule? Если бы я знал, что случилось, у меня был бы больше шансов исправить это.