![]() |
|
![]() ![]() ![]() |
|
Ams |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 19.3.2008 Где: Latvia Репутация: нет Всего: нет |
Добрый день.
Столкнулся с такой проблемой при работе mod_rewrite. Допустим, есть сайт, где основной обрабатывающий скрипт manager.pl находится в папке Project/. Пользователю отдаётся страница с меню, где ссылки вида http://localhost/Project/manager/view (manager это виртуальная папка, сгенерированная mod_rewrite). Из этого меню скрипт принимает запросы так: manager.pl?type=view. Также есть подменю, где есть ссылки вида http://localhost/Project/manager/view/table, здесь скрипту уже идёт запрос manager.pl?type=view&subtype=table. Проблема такая - при переходе по любой из ссылок пути склеиваются, то есть получаются ссылки уже http://localhost/Project/manager/view/view. Будь скрипт в корне, можно было бы избежать такой проблемы используя относительный путь, а так, данный путь - "manager/view" приклеивается и к меню, и к папкам с картинками, css и js -файлам. Собственно, вот сам .htaccess:
В общем, вопрос таков - как избежать приклеивания "manager/view" к моим ссылкам? Просто не могу понять из каких условий mod_rewrite берёт manager и view. Мануалы читал, гуглом пользовался. |
|||
|
||||
Nigel |
|
|||
познаю мир ![]() ![]() Профиль Группа: Участник Сообщений: 515 Регистрация: 20.11.2007 Репутация: 7 Всего: 19 |
Когда набираете http://localhost/Project/manager/view/table выполняется manager.pl?type=view&subtype=table?
|
|||
|
||||
Ams |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 19.3.2008 Где: Latvia Репутация: нет Всего: нет |
Да, все параметры успешно передаются и открывается новая страница с меню и подменю, где к ссылкам приклеивается "manager/view".
Если поточней, то порядок действий такой: 1. Открываем страницу, есть меню, там ссылки https://localhost/Project/manager/view. В подменю ссылки https://localhost/Project/manager/view/table и т.д. 2. Переходим по любой ссылке в подменю, и теперь ссылки в меню https://localhost/Project/manager/view/view и подменю https://localhost/Project/manager/view/view/table. В скрипте ссылки для меню выглядят как <a href="view">View</a>, для подменю <a href="view/table">Table view</a>. А FireBug показывает, что для картинок, css/js - файлов, которые лежат в папке "templates/" запрос выглядит так: https://localhost/Project/manager/view/templates/js/main.js Это сообщение отредактировал(а) Ams - 20.8.2009, 14:49 |
|||
|
||||
Ams |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 19.3.2008 Где: Latvia Репутация: нет Всего: нет |
Неужто никто не знает в чём загвоздка? За три дня никто так и не сделал предположений.
|
|||
|
||||
Nigel |
|
|||
познаю мир ![]() ![]() Профиль Группа: Участник Сообщений: 515 Регистрация: 20.11.2007 Репутация: 7 Всего: 19 |
У вас проблема в скрипте, сами же пишете относительные ссылки <a href="view">view</a>, а потом удивляетесь почему "приклеиваются".
Используйте тэг <base> или пишите абсолютные пути. |
|||
|
||||
Ams |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 19.3.2008 Где: Latvia Репутация: нет Всего: нет |
Да, спасибо, про тег base я и вовсе забыл. Проблема решена.
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |