2013-12-18 5 views
1

У меня есть сайт в промежуточной среде, которая находится на IP-адресе в виртуальном каталоге, например: http://0.0.0.0/~drupal. Проблема в том, что я настроил все URI изображения, css и js с использованием абсолютного пути, например: /path-to-image/img.jpg.mod_rewrite - Исправление абсолютных путей

Поскольку сайт сидит в директории, хотя, /path-to-image/img.jpg указывает на http://0.0.0.0/path-to-image/img.jpg

вместо http://0.0.0.0/~drupal/path-to-image/img.jpg.

Я считаю, что решение заключается в использовании mod_rewrite, но не удалось реализовать успешное решение.

Sidenote: Я думаю, что также можно изменить файл моего хоста на моем локальном компьютере при просмотре сайта, чтобы получить желаемый эффект. Однако это не будет вариантом, так как будет много сторон, просматривающих сайт, поскольку он претерпевает изменения.

ответ

1

Вы можете попробовать добавить это к ДОКУМЕНТА ROOT, то есть каталог, который http://0.0.0.0/ доступ:

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{DOCUMENT_ROOT}/~drupal%{REQUEST_URI} -f 
RewriteRule ^(.*)$ /~drupal/$1 [L] 
+0

Спасибо, позвольте мне дать, что попробовать. – Russell

+0

Мысль об этом немного больше, разве это не помешает мне использовать другие виртуальные каталоги для других сайтов на одном сервере? – Russell

+1

@ Russell это будет, поэтому вам нужно либо переместить свои активы из каталога ~ drupal, либо в корень вашего документа, либо изменить свои ссылки. Однако переписывание происходит только в том случае, если запрос действительно существует в каталоге 'druppal –

Смежные вопросы