Cheltap

Cheltap
Рейтинг
30
Регистрация
27.11.2008
dvaes:
у меня нормально работает как не крути
конструкции вида

RewriteCond %{REQUEST_URI} ^/qwerty
RewriteRule ^.*\$a$ /login.html [L]

норм работают при обращении к qwerty$a

Проэкспериментировал на другом хостинге (там где сервер apache) - нет проблем.

Но на моём хостинге сервер nginx и доллары не принимаются.

Или дело в чём-то другом может быть? А у вас какой сервер?

sokol_jack:
Особенно интересно, что браузеры вобщем-то не обязаны поддерживать ваши "естественные" ссылки. Стоит радоваться, что настройки по-умолчанию позволяют им перекодировать урлы самостоятельно.

Это делается не для браузеров, а для ботов ПС (для сохранения работоспособности ссылочной массы). По логам вижу, что "настройки ботов по умолчанию" таковы, что доллар приходит символом, а не %-кодом.

sokol_jack:
Извините конечно, что я со своим старческим маразмом лезу и какими-то странными "стандартами", но разве символ $ в валидном URL не кодируется как %24 ?

Стандарты - это не маразм, конечно же, так что с целью приведения урлов к нормальному виду страницы сайта переезжают по новым адресам. Но старые урлы хотелось бы подклеить к новым 301-м редиректом, т.к. естественные ссылки сайта "долларовые", а от твёрдой валюты я отказываться не собираюсь!🚬

unixadm:
RewriteLog /var/log/rewrite.log
RewriteLogLevel 5

RewriteLogLevel от 0 до 9, 9 - максимально подробный. Наверняка покажет, что там происходит в деталях.

Он покажет, если урл удовлетворяет условию RewriteCond,

а в моём случае сервер считает, что при наличии в урле доллара

такой урл ни под одно из условий не подпадает,

хотя это ерунда какая-то: я по началу урла его отлавливать пытаюсь.

Скажите, кто-нибудь обрабатывал GET-запросы, содержащие этот символ?

Как вы это делали?

Nervjaga:
Попробуй предшевствовать доллар с помощью \ , тоесть
RewriteCond %{REQUEST_URI} ^\$dollar

Я пытаюсь даже просто отловить для обработки все обращения на сайт, начинающиеся со строки `qwerty'.

RewriteCond %{REQUEST_URI} ^/qwerty

..........

Никаких долларов не указываю, зачем? И не экранирую, соответственно.

Это правило прекрасно ловит урлы, начинающиеся с соответствующей подстроки,

но если же в строке запроса был символ доллара (где-нибудь уже после qwerty) - то не ловит!

Как такие урлы отлавливать и обрабатывать?

unixadm:
А обычным слешом он не экранируется?

Всё подобное перепробовал - ничего не получается.

Я даже не могу написать правило для отлова таких урлов по иному любому признаку,

например он начинается с `/qwerty', пишу

RewriteCond %{REQUEST_URI} ^/qwerty

Но это отлавливает все урлы, начинающиеся на qwerty, кроме содержащих доллар,

а долларовые ничто не берёт.

Как с ними работать?

Интересует это:

VContexte:

20 сайтов - строительство, материалы и ремонт;
10 сайтов - недвижимость, квартиры, дача;

Можно получить в личку урлы и ваш номер icq?

Mister Pro:
Свободен для заказов.Спешите получить красивую шапку всего за 7 $!

Свободен?

А как там мой заказ недельной давности?

dr_Min:
Слодно не сложно?

Сложного здесь ничего нет.

По сути надо реализовать в этом скрипте 3 операции:

- загрузка файла через web-форму (стандартно);

- загрузка указанного URL'а (один вызов команды `wget' или один вызов стандартной php-функции);

- разархивирование (один вызов команды `unzip').

Garf:
Я пока на jquery писать не могу, пока использую готовые скрипты. Про DOM слышал но фиг знает как. В общем что, то похожее, но геморнее как то.

Никакие jquery и ДОМа здесь не нужны.

Вам нужен не клиентский, а серверный скрипт!

Для всех ваших форм он может быть один, но для того,

чтобы это стало возможным надо продумать систему именования

элементов HTML-форм на страницах.

Например именовать так:

table_name__column_name.

Но это очень небезопасно! Так что продумайте всё хорошенько.

Думаю, теперь всё понятно...

Вы можете сделать иначе:

- изменить название и права доступа каталога с защищаемыми файлами;

- с помощью ЧПУ настроить вызов специального скрипта при обращении к защищаемым файлам с передачей скрипту имени файла;

Скрипт должен проверять IP-адрес и, если он "свой",

создавать файл-символическую связь (с рандом-именем) с целевым файлом

и делать редирект (302) на файл-символическую связь.

Через админку можно будет редактировать список "своих" IP.

Временные файлы можно периодически удалять автоматом.

Всего: 121