Автор Тема: ?Visitor=... - что за хвост?  (Прочитано 8604 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн dub

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 236
  • +0/-0
  • 0
    • Просмотр профиля
    • http://binartis.com/
?Visitor=... - что за хвост?
« : 20 Января 2004, 11:16:58 »
На сервере хостера выложил php-скрипт. При ПЕРВОЙ загрузке страницы (когда страница еще не в кеше или типа того), ко всем относительным ссылкам непонятно с какой стати добавляется хвост ?Visitor=...

Пример: ссылка вида
< a href=/missruss/home >home< / a >
заменяется на
< a href=/missruss/home?Visitor=4f477b79e069ec50c625ef66ed6a79fb >home< / a >

Скрипт использует mod_rewrite, хотя я и не уверен, что это как-то относится к проблеме. Важно то, что mod_rewrite используется для ЧПУ, а значит нельзя такому скрипту просто взять и передать какую-то лишнюю GET-переменную. Такая ссылка просто перестает работать.

Повторю, что эта переменная добавляется только первый раз. То есть для того, чтобы отследить эту проблему, надо:
1) закрыть браузер
2) открыть браузер
3) загрузить страницу
Если же эту страницу Обновить, то хвост ?Visitor=... больше не появляется.

Хостер съезжает на ошибку в скрипте, но скрипт я писал сам, нет там ничего подобного. С чем это может быть связано? Apache? mod_rewrite? Обработчик PHP?

Заранее спасибо.

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
?Visitor=... - что за хвост?
« Ответ #1 : 20 Января 2004, 11:42:55 »
Visitor...
Похоже на сессии
LJ: Backslashed life (rss)

Оффлайн Diesel

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 69
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
?Visitor=... - что за хвост?
« Ответ #2 : 20 Января 2004, 11:46:31 »
Это ID сессии. в php.ini включен параметр session.use_trans_sid. не обращай внимания. Так и должно быть.

Оффлайн dub

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 236
  • +0/-0
  • 0
    • Просмотр профиля
    • http://binartis.com/
?Visitor=... - что за хвост?
« Ответ #3 : 20 Января 2004, 11:48:05 »
Цитировать
CGVictor:
Похоже на сессии

А подробнее? Сессии я использую тоже. Но на локальном хосте у меня проблем с относительными ссылками от этого не возникало. Если проблема с настройками сессии, то где - в скрипте или в php.ini у хостера?

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
?Visitor=... - что за хвост?
« Ответ #4 : 20 Января 2004, 11:53:32 »
Лучше у него и спросить... Мне кажется, у него стоит session_autostart с переменной visitor.
LJ: Backslashed life (rss)

Оффлайн dub

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 236
  • +0/-0
  • 0
    • Просмотр профиля
    • http://binartis.com/
?Visitor=... - что за хвост?
« Ответ #5 : 20 Января 2004, 11:54:05 »
Цитировать
Diesel:
в php.ini включен параметр session.use_trans_sid

Так-с, это уже похоже на правду. Но проблема в том, что мои относительные ссылки с этим хвостом не работает, потому как обрабатываются они скриптом index.php, на который перекидываются mod_rewritом. Короче, ссылки должны сохранять точный внешний вид для правильной обработки и лишние GET-переменные все сильно портят.
Вопрос: как этот параметр отключить?

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
?Visitor=... - что за хвост?
« Ответ #6 : 20 Января 2004, 12:25:35 »
в php.ini или в .htaccess
ну, будем исповедоваться?

Оффлайн dub

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 236
  • +0/-0
  • 0
    • Просмотр профиля
    • http://binartis.com/
?Visitor=... - что за хвост?
« Ответ #7 : 20 Января 2004, 12:35:48 »
Или
ini_set() ?
Для начала попробую уломать хостера выключить параметр в php.ini. По дефолту он "0". Плюс - Security Level и все такое.
AliMamed
Как это сделать в .htaccess пока не знаю. Буду искать инфу, если есть ссылка под рукой - кинь plz.

Оффлайн Diesel

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 69
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
?Visitor=... - что за хвост?
« Ответ #8 : 20 Января 2004, 12:45:08 »
dub Это не в коем случае не нужно отключать. Иначе у тебя не будут работать сесси, если отключены куки. я с mod_rewrite не работал, помочь не могу, но уверен что эта проблема должна решаться не выключением параметра.

Оффлайн dub

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 236
  • +0/-0
  • 0
    • Просмотр профиля
    • http://binartis.com/
?Visitor=... - что за хвост?
« Ответ #9 : 20 Января 2004, 12:55:07 »
AliMamed
Судя по всему, имелось в виду следующее:

To disable register_globals you have to set:
php_value register_globals 0

В моем случае
php_value session.use_trans_sid 0

php_value.. Точно. Запамятовал. Спасибо.

Diesel
http://www.php.net/manual/en/ref.session.php#ini.session.use-trans-sid

session.use_trans_sid boolean

session.use_trans_sid whether transparent sid support is enabled or not. Defaults to 0 (disabled).

Note: For PHP 4.1.2 or less, it is enabled by compiling with --enable-trans-sid. From PHP 4.2.0, trans-sid feature is always compiled.

URL based session management has additional security risks compared to cookie based session management. Users may send an URL that contains an active session ID to their friends by email or users may save an URL that contains a session ID to their bookmarks and access your site with the same session ID always, for example.

В свете вышеизложенного мне не особо-то и надо, чтобы сессии работали с отключенными кукисами. Если чел логинится на мой сайт, значит ему туда надо. Если ему туда надо - пусть разрешит куки. Мой куки подписан.

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
?Visitor=... - что за хвост?
« Ответ #10 : 20 Января 2004, 13:09:02 »
именно эту переменную через ini_set изменять нельзя. про php_value - правильно
ну, будем исповедоваться?

Оффлайн dub

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 236
  • +0/-0
  • 0
    • Просмотр профиля
    • http://binartis.com/
?Visitor=... - что за хвост?
« Ответ #11 : 20 Января 2004, 13:15:06 »
Цитировать
AliMamed:
именно эту переменную через ini_set изменять нельзя

Ага. Точно.

session.use_trans_sid "0" PHP_INI_SYSTEM|PHP_INI_PERDIR

PHP_INI_PERDIR 2 Entry can be set in php.ini, .htaccess or httpd.conf  
PHP_INI_SYSTEM 4 Entry can be set in php.ini or httpd.conf  

С помощью .htaccess палучылас. Спасибо еще раз.

Оффлайн Diesel

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 69
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
?Visitor=... - что за хвост?
« Ответ #12 : 20 Января 2004, 13:30:59 »
dub Если чел заботится о том чтоб никто под его аккаунтом не зашел, пусть жмет "выход", когда уходит. Для того что бы убить сессию есть session_destroy(); Отключать куки это параноя, но гоаорить "Пусть включает куки если хочет на " мой сайт, это все равно что "Пусть ставит IE чтоб смотреть мою страничку"

Оффлайн dub

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 236
  • +0/-0
  • 0
    • Просмотр профиля
    • http://binartis.com/
?Visitor=... - что за хвост?
« Ответ #13 : 20 Января 2004, 13:58:43 »
Diesel
Развитие темы рискует перерасти во флейм.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
?Visitor=... - что за хвост?
« Ответ #14 : 20 Января 2004, 14:25:43 »
Цитировать
dub:
Важно то, что mod_rewrite используется для ЧПУ, а значит нельзя такому скрипту просто взять и передать какую-то лишнюю GET-переменную.

Это если мод-реврайт без ума использовать.

Цитировать
dub:
Развитие темы рискует перерасти во флейм.

Да, грозит. Если автор вопроса не понимает, что такое сессии, и зачем они ему.

похоже, что товарисч счетчичек решил с помощью сессий завести.

В жизни, человека, который кувалдой сапожный гвоздик забивает в детский сандалик, как на идиота посмотрят. А в пхп все можно - божья роса!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28