Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » WAP-сайт с самого начала.

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Открыть новую тему     Написать ответ в эту тему

GPSII

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
единственный гемор у тебя будет создание сессии  

Не, лучше все-таки встроенные в PHP сессии юзать, как товарищи подсказывают. Пока вроде получается, только PHP поднастроить надо слегка.
2 Gram & SiMM
А с точки зрения безопасности механизм нормальный? Почитал тут доки, вроде до файлов сессий можно добраться, а там засериаленные переменные ответственные. Кроме того, если в урле "подсмотреть" сессию, то можно по ней залезть, пока она действует.
Рассейте паранойю, пж.

Всего записей: 40 | Зарегистр. 09-12-2005 | Отправлено: 10:07 20-12-2005
Mamay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
GPSII

Цитата:
Кроме того, если в урле "подсмотреть" сессию, то можно по ней залезть, пока она действует.  

если у тебя пацанский девайс(смартфон) то подсмотреть сессию в урле не проблема - можно также сохранить закладку на телефоне и передать её другу - но это геморно имхо и никто по сути этим заниматся не станет - и потом - попробуй догадайся что я там передаю по ссылкам(на телефоне ссылок не видно а для браузеров можно и не таскать по ссылкам непонятную инфу )...


----------
Даже самый дурацкий замысел можно выполнить мастерски

Всего записей: 1352 | Зарегистр. 03-09-2002 | Отправлено: 18:20 20-12-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1. Время жизни сессии ограничено, и к моменту её использования оно может пройти.
2. В сессии можно хранить дополнительные параметры клиента и его браузера (IP, другие подходящие HTTP-заголовки запроса) и в случае несоответствия слать клиента лесом.
Цитата:
до файлов сессий можно добраться, а там засериаленные переменные ответственные.
Так же, как можно добраться до БД и/или ftp.

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 18:43 20-12-2005
GPSII

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну это я так, про злое-учих хакеров, которые будут шаловливо ломиться в систему. Понятно, что от самых злых не убережешься, но от подрастающих хотелось бы.
 
Добавлено:
SiMM
Да, время буду делать маленькое.
В доп.параметрах использовал название клиента и IP, однако билайновые телефоны, в любое время года и суток выдают один и тот же адрес Прям елки, блин!
Есть ли какие более уникальные параметры на примете?

Всего записей: 40 | Зарегистр. 09-12-2005 | Отправлено: 18:47 20-12-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Ну это я так, про злое-учих хакеров, которые будут шаловливо ломиться в систему.
При нормальной настройке вэбсервера (коей должны заниматься хостеры) никто чужих сессий не увидит. В любом случае, местоположение сессонных файлов ты можешь изменить самостоятельно (либо вообще хранить сессии в БД)
Цитата:
Да, время буду делать маленькое.
Стандартное время gc_maxlifetime = 24 минуты вполне нормально, ИМХО. Ну это уже на твоё усмотрение - делать время жизни сессии слишком малым - так же неблагоразумно (у пользователей они будут быстро теряться).
Цитата:
однако билайновые телефоны, в любое время года и суток выдают один и тот же адрес
Правильно. Потому что сидят все через один и тот же прокси. Насколько я слышал, некоторые компании передают с хидерами номер телефона, кроме того, можешь подсматривать внутренний IP-адрес, если его передаёт прокси. В любом случае, ничто не мешает тебе поискать нужную информацию среди той, что приходит в массиве $_SERVER или которую можно получить при помощи getallheaders.

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 19:20 20-12-2005
GPSII

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Блин, как же задолбали эти сони-эриксоны!
Похоже, телефоны не особо любят редиректы. Хочу загрузить скрипт с помощью Headerа Location. При этом, поскольку микробраузеру идет код редиректа, он начинает выеживаться, как может. Старый эрик никак не может и сглатывает. Нокия может вякнуть, что ее редиректят и попросить апрува, а новый эрик грит "ошибка связи" (подозреваю, что именно на это действие). Нет ли у обчества воркараунда какого?

Всего записей: 40 | Зарегистр. 09-12-2005 | Отправлено: 21:01 20-12-2005
Gram



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
а новый эрик грит "ошибка связи" (подозреваю, что именно на это действие)

Не факт. Причина не известна... Может кто знает как решить?

Всего записей: 388 | Зарегистр. 22-01-2004 | Отправлено: 22:42 20-12-2005
borisAD

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GPSII
У меня сониериксоны K700 и T630 редиректятся нормально.

Всего записей: 8 | Зарегистр. 08-11-2005 | Отправлено: 15:55 21-12-2005
GPSII

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Понял. Разбираюсь.
Кстати, как проверить, что сессия протухла?
Я решил через gc действовать, поставил session.gc_probability 1 и session.gc_divisor 1, чтобы быстренько старые сессии стирать, но вроде как gc запускается при старте новой сессии, т.е. если у меня за полдня 1 сессия, то она будет "жить", даже если время в session.gc_maxlifetime выставлено короткое?
Можно ли сессию на просроченность руками проверить?

Всего записей: 40 | Зарегистр. 09-12-2005 | Отправлено: 16:09 21-12-2005
Mamay



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
GPSII

Цитата:
Похоже, телефоны не особо любят редиректы.

WML 1.0,1.1 НЕПОНИМАЕТ редиректы ВООЩЕ !!!!
глобальный RTFM!!!
 
Добавлено:
на эмуляторе это может проканать - в опере тоже - а живой девайс сосмеху подавится - особенно если он(девайс) в возрасте...
 
Добавлено:
есть события onenterforward и onenterbackward  --- вот ими и нужно оперировать !!!!!
 
Добавлено:

Цитата:
Можно ли сессию на просроченность руками проверить?

просто проверить на isset переменную

----------
Даже самый дурацкий замысел можно выполнить мастерски

Всего записей: 1352 | Зарегистр. 03-09-2002 | Отправлено: 18:18 21-12-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну храните таймштамп времени последнего использования сессии, если после открытия оно слишком велико - делайте $_SESSION = array();

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 18:54 21-12-2005
GPSII

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mamay
Ты о чем, дружище?
Я вот о чем:
The second special case is the "Location:" header. Not only does it send this header back to the browser, but it also returns a REDIRECT (302) status code to the browser unless some 3xx status code has already been set.
 
Получается, что когда я использую хидер location, браузер получает редирект (302) и начинает на него бурно реагировать (нокиа). Мне-то как раз ничего от браузера не нужно вовсе!

Цитата:
просто проверить на isset переменную

Дык с этого и начал: валяются эти переменные хрен знает сколько, сессии столько не живут
SiMM
Т.е. вот так все ручками?
А я тут начитался агиток, что "PHP сам все делает"
Похоже, gc вообще не при делах, она только свою "коллекцию мусора" прибирает иногда?

Всего записей: 40 | Зарегистр. 09-12-2005 | Отправлено: 19:12 21-12-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Т.е. вот так все ручками?
Всё ручками - это когда механизм сессий вы пишете целиком сами. А так получается не всё - а некоторые детали. Не знаю, может это болезнь не всех версий PHP (проверял на 4.3.11 из консоли и под Win), но, как оказалось, видимо дата создания/модификации файла имеет значение только для сборщика мусора. Т.е. если удалось стартануть сессию, которая ещё лежала на диске и не была удалена сборщиком - то данные вам действительно будут доступны. Есть ещё вариант - юзать session_set_save_handler. Встроенный механизм служит в основном для того, чтобы избавить вас от необходимости переписывать URL'ы, добавляя к ним по необходимости SID, в HTML-контенте.

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 19:49 21-12-2005 | Исправлено: SiMM, 19:52 21-12-2005
GPSII

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
дата создания/модификации файла имеет значение только для сборщика мусора

В доке вычитал только вот это:
If you are using the default file-based session handler, your filesystem must keep track of access times (atime). Windows FAT does not so you will have to come up with another way to handle garbage collecting your session if you are stuck with a FAT filesystem or any other filesystem where atime tracking is not available. Since PHP 4.2.3 it has used mtime (modified date) instead of atime. So, you won't have problems with filesystems where atime tracking is not available.

Цитата:
 Встроенный механизм служит в основном для того, чтобы избавить вас от необходимости переписывать URL'ы, добавляя к ним по необходимости SID, в HTML-контенте.

Как оказалось, PHP не дописывает ничего к элементам go href Мы ведь тут конкретно о WAPе говорим?

Всего записей: 40 | Зарегистр. 09-12-2005 | Отправлено: 20:08 21-12-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Как оказалось, PHP не дописывает ничего к элементам go href  Мы ведь тут конкретно о WAPе говорим?
Попробуй url_rewriter.tags (добавить go=href, или изменить полностью на то, что положено для WML)

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 20:53 21-12-2005 | Исправлено: SiMM, 20:57 21-12-2005
GPSII

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SiMM
Спасибо, полезная штука.
Я, правда, попробовал обойтись без него, но тогда надо в урл засовывать переменные. Тут почему-то огреб ошибку unterminated entity reference. Как РНР относится к существующим параметрам в строке?

Всего записей: 40 | Зарегистр. 09-12-2005 | Отправлено: 21:10 21-12-2005
SiMM

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Тут почему-то огреб ошибку unterminated entity reference. Как РНР относится к существующим параметрам в строке?
Может я ошибаюсь, но помоему ты путаешь WML и PHP. Ошибка твоя к PHP отношения не имеет. Разделять параметры URI в WML нужно не с помощью &, а с помощью & (arg_separator.output?). Если я правильно понял проблему.
 
Добавлено:

Цитата:
попробовал обойтись без него
А зачем?

Всего записей: 2302 | Зарегистр. 14-05-2004 | Отправлено: 21:21 21-12-2005 | Исправлено: SiMM, 21:23 21-12-2005
GPSII

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SiMM
Я написал непонятно:
конечно, ошибка получилась в WML, а спрашивал я, как РНР прилепляет SID, если в строке уже есть что-то типа ...php?param=ddd?
Кстати, реврайтер решил первоначальную проблему, спасибо за наводку, но с а хрефами код компактней, поэтому хочется добить и строки с параметрами.
 
Доперло про сепаратор, щас попробую, спасибо.
 
С сепаратором заработало, спасибо большое! Кстати, с таймстампом в переменных сессии легко решился вопрос с ее длительностью.
 
Добавлено:
Обнаружилось чудо чудное! Параметры, которые передавались постфилдами где-то тусуются! Если потом, где-нибудь в другом скрипте опять передать их (постфилд с переменной), то они всплывают, как ни в чем не бывало! Где-то они кешируются в телефоне что-ли?
Простой ансет не помогает.

Всего записей: 40 | Зарегистр. 09-12-2005 | Отправлено: 21:26 21-12-2005 | Исправлено: GPSII, 21:35 21-12-2005
GPSII

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WML ругается на "неизвестный элемент 'br'. "элемент" этот он находит в инклюдед-скрипте с функциями, который, ессно, ничего ваще не выводит и wml не содержит. Т.е. какой-то левый символ все портит. Как его разыскать?

Всего записей: 40 | Зарегистр. 09-12-2005 | Отправлено: 13:50 24-12-2005
kspy



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
смотри внимательно что выводится в браузер, обычно какая нибудь простая ошибка.. например, засунул что-нибудь не в тегах <p>

Всего записей: 166 | Зарегистр. 04-11-2003 | Отправлено: 11:50 25-12-2005
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Компьютерный форум Ru.Board » Интернет » Web-программирование » WAP-сайт с самого начала.


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

LiteCoin: LgY72v35StJhV2xbt8CpxbQ9gFY6jwZ67r

Рейтинг.ru