Как использовать RewriteBase в .htaccess для перезаписи тегов img? - PullRequest
0 голосов
/ 26 июня 2009

Полагаю, я не понимаю RewriteBase. У меня есть (drupal) сайт, созданный на моем сервере dev, и все работает отлично. Я создал поддельный URL-адрес для него в своем собственном файле apache и hosts, поэтому перехожу к своей локальной версии с помощью local-examplesite.com.

В конечном итоге он будет размещен на сайте www.examplesite.com, но я хочу разместить черновик с временным URL-адресом в моей хостинговой компании, например, 123.45.67.89/~examplesite. Я установил RewriteBase в .htaccess на / ~ examplesite.

Все страницы работают нормально, и все навигационные ссылки идут в нужные места. Но ни одно из моих изображений не работает! Они имеют формат src = "/ sites / default / images / blah.png", поэтому теги отображаются как src = "http://123.45.67.89/sites/default/images/blah.png", вместо src =" http://123.45.67.89/~examplesite/sites/default/images/blah.png".

Можно ли как-нибудь заставить сайт указывать на правильные изображения? Я думал, что это то, для чего была rewritebase, но после прочтения немного, я думаю, что это только для URL (те, которые переписываются, естественно).

1 Ответ

1 голос
/ 13 марта 2010

Я боролся с этим сам, пока не понял, что мое понимание правил переписывания неверно. Правила перезаписи предназначены только для перезаписи URL. Apache не применяет их к содержимому HTTP-запросов. Тег находится в HTTP-запросе.

Решением моей проблемы было применение сценария оболочки sed для подстановки регулярных выражений в старых путях

...