SID в полной ссылке

First

Новичок
Имеется задача передать идентификатор сессии SID в полной ссылке,
если записываю так:
Код:
<a href="2.php">Второй шаг</a>
то SID передается, а если записываю так:
Код:
<a href="http://myportal/parsers/2.php">Второй шаг</a>
то SID не передается, тут http://webi.ru/webi_articles/6_9_f.html написано что
передача SID в полной ссылке зависит от настроек сервера, кто в курсе что надо подправить и где чтобы SID передавался в полной ссылке?
Сервер: nginx 1.7 + php 5.3
 
Последнее редактирование:

fixxxer

К.О.
Партнер клуба
session.use_trans_sid, но это адов костыль, чем куки не устраивают?
 

First

Новичок
session.use_trans_sid, но это адов костыль, чем куки не устраивают?
session.use_trans_sid, я сразу прописал

session.use_trans_sid = 1
как и:
session.use_cookies = 0
session.use_only_cookies = 0

но все равно SID в полной ссылке не передается, а куки полностью устаривают, но браузер что в телевизоре очень сильно обрезан и куки не поддерживает (((, поэтому и приходится вот так изворачиваться

в качестве теста использую пару скриптов:
Код:
<?php
// файл 1.php
session_start();
$_SESSION['asd']='aaaaaa';
?>
<a href="2.php">тест</a>
и
Код:
<?php
// файл 2.php
session_start();
print $_SESSION['asd'];
?>
если записываю так:
Код:
<a href="2.php">Второй шаг</a>
то SID передается, адресная строка в браузере при переходе по ссылке выглядит так:
Код:
http://myportal/2.php?PHPSESSID=5m3pm6gc3t32mbsl1m8rguuhn1
а если записываю так:
Код:
<a href="http://myportal/2.php">Второй шаг</a>
то SID не передается
И если люди специально пишут полную ссылку чтобы SID не предавался, то у меня задача противоположная
 
Последнее редактирование:

fixxxer

К.О.
Партнер клуба
Ну это логично что к абсолютному урлу не приписывается автоматически. Пиши относительный, или добавляй sid ручками.
 

First

Новичок
или добавляй sid ручками.
Спасибо за совет, так уже пробовал, прописывал переменную $sid = SID; и добавлял ее к адресу
Код:
echo "<stream_url>$url?$sid</stream_url>\r\n";
и если значение $url имеет простой вид, то адрес получается такой
Код:
http://myportal/parsers/kinoprosmotr/2.php?PHPSESSID=l1f3uep2aodmp5fo3c9hq1djs0
и SID передается на ура, а если такой
Код:
http://myportal/parsers/kinoprosmotr/2.php?adres=http://kinoprosmotr.net/boevik/5156-bezumnyy-maks-doroga-yarosti.html?PHPSESSID=l1f3uep2aodmp5fo3c9hq1djs0
то идентификатор сессии не передается, возможно я не в том месте его добавляю, если ошибаюсь прошу поправить, опыта у меня к сожалению очень и очень мало (((
 
Последнее редактирование:

WMix

герр M:)ller
Партнер клуба
http://php.net/manual/de/function.rawurlencode.php
но тут вотрос кому принадлежит SID?
kinoprosmotr или myportal
на всякий случай, осознаешь, что будет если другой пользователь получит такую ссылку (типа, друган, на ссылку, этот фильм смотрю)?
 

First

Новичок
но тут вотрос кому принадлежит SID?
Правильный вопрос!
Решение моей задачи лежало на поверхности, мне надо всего лишь прописать ссылку по типу
http://myportal/parsers/kinoprosmotr/2.php?PHPSESSID=l1f3uep2aodmp5fo3c9hq1djs0
а адрес типа http://kinoprosmotr.net/boevik/5156-bezumnyy-maks-doroga-yarosti.html присвоить переменной и вместе с другими переменными впихнуть в глобальный массив $_SESSION и впоследствии оттуда их вытянуть для дальнейшей обработки, все оказалось намного проще чем казалось, спасибо за наводку! )))
 

First

Новичок
В мануалах нашел еще способ:
rewrite, виртуальный каталог - http://php.spb.ru/ac4f4a45bdc893434c95dcaffb1c1811/test.php
С помощью стандартного модуля rewrite можно огранизовать подобного рода виртуальный каталог. Если написать произвольный путь - Апач возьмет скрипт test.php из фиксированного каталога. В скрипте придеться проанализировать переменную $url=getenv("REQUEST_URI"); и взять из нее идентификатор. Далее по нему PHP восстановит нужную сессию.

кто в курсе как организовать виртуальный каталог ?
 

WMix

герр M:)ller
Партнер клуба
погугли по теме ЧПУ найдешь кучу примеров
 

First

Новичок
погугли по теме ЧПУ найдешь кучу примеров
Благодарю за совет, нашел, практически прям сразу ! )))

Допишу как сделал, в регуляркак не очень силен, написал ее как смог:
вот путь к скрипту
Код:
http://myportal/parsers/kinoylei/kinoylei.php
с виртуальным каталогом вид будет такой
Код:
http://myportal/a5lsmpo20bpc2kls8nss5u5n72/parsers/kinoylei/kinoylei.php
у меня сервер nginx, в секции server пописал всего одну строчку
Код:
rewrite  ^/.*/parsers(.*)$  /parsers/$1  last;
и nginx провел меня по нужному мне пути )))

P.S. Классный же этот форум и его участники!, ответы такие что заставляют думать и учится, то есть вместо рыбы дается удочка ))))
 
Последнее редактирование:
Сверху