Работоспособный путь с символами '?', '=', '&' в Drupal 7

Главные вкладки

Аватар пользователя Айдар Айдар 18 сентября 2011 в 21:09

Люди добрые, подскажите такую фичу и чем мне может грозить в плане безопасности ее исполнение:

Друпал перекодирует символы '?', '=', '&' в '%3F', '%3D', '%26' соответственно. Собственно, есть потребность изменить это действо - оставить как есть.

Нашел только эту инструкцию, но она не отрабатывает (2008 год, видимо) - символы в урлах остаются как есть, но при попытке перейти по адресу отдает 404.

Помимо этого нашел еще в settings.php такие строки:

<?php* Database settings:
 *
 * Note that the $db_url variable gets parsed using PHP's built-in
 * URL parser (i.e. using the "parse_url()" function) so make sure
 * not to confuse the parser. If your username, password
 * or database name contain characters used to delineate
 * $db_url parts, you can escape them via URI hex encodings:
 *
 *   : = %3a   / = %2f   @ = %40
 *   + = %2b   ( = %28   ) = %29
 *   ? = %3f   = = %3d   & = %26?>

Соответственно, раскомментировал последнюю строку, но все равно не сработало.
Где-то прочитал, что этот код вообще отрабатывается mod_rewrite сервера.

Есть ли у меня какие еще шансы победить таки это дело?

Традиционно Спасибо!

Комментарии

Аватар пользователя boneg boneg 18 сентября 2011 в 21:19

Не могу понять проблему. Если вам нужно генерировать в модуле ссылки с доп. get-переменными - функция l() принимает в атрибутах массив get-переменных 'query'=>array(...)

Если нужна страница в своем модуле, которая по-разному выглядит, исходя из значения переменных - if ($_GET['переменная'] == 'значение') {}

Аватар пользователя Айдар Айдар 18 сентября 2011 в 22:33

"boneg" wrote:
Если вам нужно генерировать в модуле ссылки

"RxB" wrote:
думаю Айдар хочет

Неа, неправильно!

Звиняюст за долгий ответ!
Задача: перекинуть недрупаловский сайт в друпал, и 2 варианта:
1) Аксессовская БД → Друпальская БД = 18к (возможно, Вы Виктор в курсе), и это минус
2) Спарсить в Друпал.

Трабла: в старом сайте урлы имеют вид '/page/?id=xx', и их (урлы) нужно сохранить.
Сам модуль парсера.

ПыСы Туплю - я код не тот применял - парсер работает под 7-ку, так что вообче без вариантов пока.

Аватар пользователя Ch Ch 19 сентября 2011 в 6:38

Можно добавить правило в .htaccess, и преобразовывать page/?id=xx в node/xx. Если страниц не много, то вероятно лучше будет всё таки просто сделать 301 редирект на новые урлы.