21.1.2001 16:45 Cyrill Malevanov [] Можно обойтись без mod_rewrite путем указания DocumentRoot .../.../.../index.php в настройках виртуального хоста. А там уже можно и $REQUEST_URI разбирать. Ответ DL: Так это получается тот же ErrorDocument. Главная проблема ? жвижку надо слишком много компилировать, если все в одном месте лежит. |
23.1.2001 18:34 Рауф [] Как быть с относительными путями? когда делаю hrc.ru/consulting - все работает, грузится, картинки ищутся в hrc.ru/pictures, но когда набираю hrc.ru/consulting/ (а так получается если я по ссылке перехожу), то все отрабатывается похожим образом, но пути у картинок и остального строятся относительно директории consulting, которой нету, так как у меня используется этот механизм виртуальных директорий ( Вообщем как обойти это -- не знаю. :( Ответ DL: Писать абсолютные пути. У меня ? та же проблема. |
17.2.2001 16:42 Жека [] >>Рауф В Вашем случае действительно легче с абсолютом, но можете почитать дальше. Я понял так: есть script "consulting._ext_", в нем ссылки на картинки имеют вид "pictures/имя_файла". Естественно броузеры при создании полного пути заменят текст после последнего слеша на относительный путь. Выход прост: ведите отсчет от /consulting/, т.е. "../pict_и_т_д", а в самом скрипте запретите обращение к нему без закрывающего слеша, либо добавьте в <HEAD> элемент <BASE> и измените "базу" страницы. Наслаждайтесь жизнью, она того стоит.(афоризм) Ответ DL: Кстати, по-моему, можно при помощи mod_rewrite ОЧЕНЬ упростить работу с картинками. Наверняка кое-кто в сети (та же Лента.ру) догадались, что это можно делать, но молчат :) RewriteRule pict/[^\\./]+\\.(gif|jpe?g|png)$ - [L] RewriteRule ([^\\./]+)\\.(gif|jpe?g|png)$ /detail/pict/\$1.\$2 [L] Дома проверил - работает, причем сервер не грузит (пока я не добавил в негативные классы слэш - картинки вообще не выдавались! и своп постепенно забивался). Первая строка здесь нужна, чтобы не зациклить сервер (иначе он будет бесконечно переписывать "прямые" запросы к картинкам). Параметр "[L]" заставляет прекратить дальнейшие переписывания адресов. И не надо париться с "../../" :) Пути к файлам можно писать хоть какие ? только имена чтоб совпадали! Остается только выяснить, насколько это грузит сервер. Будут смельчаки? Если что-то проверите - пишите, опубликую результаты. |
21.3.2001 17:04 David Mzareulyan [] DL, а кто Вас заставляет всё это компилировать?:) all.php должен просто разобрать путь и понять, чего от него хотят. После этого делается include() того php-модуля, который отвечает за конкретный запрос и всё. Вовсе не обязательно всю функциональность упихивать в один скрипт. Ответ DL: С include просто структура кода сложнее. |