
У меня есть следующий код в файле .htaccess, расположенном в корне некоторого поддомена, например:http://demo.example.com:
RewriteEngine on
RewriteRule ^$ /admin/index.php?q=user/nazgulled [L]
Когда кто-то получает доступhttp://demo.example.com, они будут перенаправлены на URL выше. Который является HTML-страницей. Но эта HTML-страница использует относительный адрес для таких вещей, как изображения, CSS-код и JavaScript-код. Они не работают, потому что не могут найти файлы в текущем каталоге (корень поддомена). Они расположены в папке "admin".
Как мне сделать так, чтобы это работало, изменив только файл .htaccess?
решение1
Можете ли вы добавить что-то вроде этого над этой строкой?
RewriteRule ^/(.*\.css)$ /admin/$1 [L]
Это всего лишь предположение, но похоже, что вам нужно переназначить все обратно из "корня" в ваш путь. Я думаю, что вы идете по пути хаков. Вам придется сделать то же самое для .js, затем, вероятно, для изображений, загруженных файлов и т. д. Я подозреваю, что может быть быстрее изменить HTML, чтобы сопоставить их с тем, где они на самом деле находятся.