Использование mod_rewrite для перезаписи корня сайта - PullRequest
0 голосов
/ 16 октября 2011

Я пытаюсь, чтобы относительные ссылки, начинающиеся с косой черты (/), переписывались с помощью mod_rewrite для ссылки на корень сайта.

У меня есть сайт:

http://localhost/mysite/ 

и у меня есть многочисленные ссылки, например, в моем каталоге css, отформатированном так:

background: url('/img/background.jpg');

Я хотел бы использовать mod_rewrite, чтобы указать, что:

http://localhost/mysite/img/background.jpg

Но сейчас он указывает на:

http://localhost/img/background.jpg

Я заранее прошу прощения, если это не сложно, но я новичок в mod_rewrite, и до сих пор мне не удалосьзаставить это работать!

1 Ответ

0 голосов
/ 16 октября 2011

Это нехорошо. Это клейкая ошибка, которая должна быть исправлена ​​в своей основе.

Переписывая URL-адреса таким образом, вы рискуете разорвать ссылки на других сайтах, например, на localhost, и это длительный кошмар обслуживания, связанный с URL-адресами вне корневого каталога вашего сайта.

Попробуйте вместо этого использовать относительные ссылки в вашем CSS, например,

background: url('../img/background.jpg');

, если изображения находятся в соседнем каталоге, где находится ваша таблица стилей CSS.

Ссылки в таблицах стилей всегда связаны с расположением таблицы стилей, а не с HTML-файлом, который ее использует. Это позволяет очень просто использовать относительные ссылки в таблицах стилей.

...