За последние 24 часа нас посетили 20280 программистов и 1724 робота. Сейчас ищут 2179 программистов ...

Временно убрать PHPSESSID из ссылки на файл ?

Тема в разделе "Прочие вопросы по PHP", создана пользователем windwail, 20 апр 2006.

  1. windwail

    windwail Активный пользователь

    С нами с:
    20 апр 2006
    Сообщения:
    7
    Симпатии:
    0
    Проблема такая, есть сайт, где необходима возможность скачивания парочки файлов... но из-за этого гребаного PHPSESSID ссылки на файлы превращаются в нечто страшное :
    http://localhost/setki.tar.gz?&PHPSESSI ... ec9086f792

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

    Может кто нибудь знает как можно сделать так, чтобы эта PHPSESSID не появлялась в одной ссылке ? может есть какие трюки ?
     
  2. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    windwail
    ну так отключи ее именно в этом срипте
     
  3. windwail

    windwail Активный пользователь

    С нами с:
    20 апр 2006
    Сообщения:
    7
    Симпатии:
    0
    я использую smarty, может быть из за него такой код изменений не дает:

    ini_set("session.use_trans_sid",false);
    $smarty->assign("fname",$fname.'.tar.gz');
    $smarty->display($tpl);
    ini_set("session.use_trans_sid",true);
     
  4. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    windwail
    эта директива выполняется уже в самом конце. когда происходит вывод данных клиенту.
     
  5. Belegnar

    Belegnar Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    299
    Симпатии:
    0
    mod_rewrite спасет отца русской демократии :)
     
  6. Kelkos

    Kelkos Активный пользователь

    С нами с:
    15 апр 2006
    Сообщения:
    37
    Симпатии:
    0
    каким это образом?

    аффтар, пойми, идентификатор сессии не смарти прилепляет к ссылкам. ты используешь сессии? ну так или включай поддержку в куках (идентификатор будет только при первом обращении к сайту) или не пользуйся сессиями в данном скрипте. Других средств НЕТ.
    Вообще для "убийства" номера сессии продумывают алгоритмы, которые не используют сессии до того момента. когда их можно "безболезненно" стартануть (при POST или ещё как.. главное, чтобы "просто так" не вылезал).
     
  7. windwail

    windwail Активный пользователь

    С нами с:
    20 апр 2006
    Сообщения:
    7
    Симпатии:
    0
    короче :) академики, млин...
    я понимаю что PHPSESSID и Кукишы это два способа передавать сессии... вот поэтому я спришивал о ТРЮКЕ... ну нечто подобное я нашел
    $smarty->assign("fname","http://localhost/$fname.tar.gz");
    таким макаром у него хватает сил только добавить знак '?' в конце... но это не помеха.
    Ура, товарищи!
    Победа революционных масс, над буржуазной интеллигенцией!
     
  8. Belegnar

    Belegnar Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    299
    Симпатии:
    0
    про мод_реврайт
    делаешь что-то вроде
    RewriteRule ^(.+)arch.zip(.+)$ $1/arch.zip
     
  9. windwail

    windwail Активный пользователь

    С нами с:
    20 апр 2006
    Сообщения:
    7
    Симпатии:
    0
    что бы это "что-то вроде" сделать, нужно знать этот мод... окинув умным взором обьем информации, который нужно изучить, чтобы вникнуть в этот мод, я решил что пускай пока остается все так кака есть... работает же ведь... а мне большего не нужно, когда сдача проекта итак затянута на полмесяца :)
     
  10. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    windwail
    а отключи вооще этот SESID нафиг?
     
  11. simpson

    simpson Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    1.650
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    что мешает сделать
    Код (Text):
    1. ini_set('session.use_trans_sid', 0);
    или
    Код (Text):
    1. ini_set('url_rewriter.tags', '');
    ?