Вопрос:Htaccess для перенаправления на подкаталог на основе имени хоста
Что набор правил мне нужно сделать следующие переадресовывает:
[1] http://www.xyzblog.com/foo/bar.php => htdocs/projects/xyzblog/foo/bar.php
[2] http://www.xyzblog.com/js/jquery-min.js => htdocs/js/jquery-min.js
[3] http://www.bigcommerce.ch/images/baz.png => htdocs/projects/bigcommerce/images/baz.png
[4] http://www.bigcommerce.ch/css/reset.css => htdocs/css/reset.css
В работе [2] и [4] запрошенный файл существует в исходном пути, поэтому перенаправление не происходит.
фон:
У меня есть Энво WAMP, который использует Apache друг отличных XAMPP. Я работаю над несколькими проектами для различных клиентов и создали следующую структуру каталогов:
htdocs
+ css
+ images
+ includes
+ js
+ projects
+ bigcommerce
+ xyzblog
...
Когда я начинаю работать над новым проектом, я создать каталог с таким же именем по проектам; кроме того, я называю проект после имени хоста клиента. Поэтому, если я начну работать над проектом, где производственный участок будет http://www. dreamvacation.com
Я добавляю каталог dreamvacation
в каталог проектов.
Наконец я временно, добавьте следующую строку в мой hosts
файл в C:\WINDOWS\system32\drivers\etc
127.0.0.1 dreamvacation.com
Таким образом, все запросы к dreamvacation.com будут закорочены на мой локальный.
Мне по-прежнему нужен один компонент, чтобы иметь возможность кодировать на локальном хосте и ожидать, что он будет вести себя одинаково при загрузке на производственный сервер. Это файл htaccess, чтобы проверить, что имя хоста находится в запросе, и перенаправить в каталог с тем же именем, что и идентификатор верхнего домена (.com
, .net
и т. Д.). Перенаправление должно выполняться только в том случае, если запрошенный файл не существует. Это последнее условие существует, потому что я размещаю часто используемые файлы в каталогах под htdocs
- например, у меня есть только один jquery-min.js
в htdocs/js
и только один проект css в htdocs/css/blueprint/screen.css
. Однако каждый проект также имеет подкаталог js
, css
, ... но только для файлов, специфичных для проекта.
Как это можно достичь?
обычно сказано ... думаю об использовании 'vhosts' для этого. http://httpd.apache.org/docs/2.0/vhosts/examples.html – thedom