Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> не работют куки, дошло до того что копирую готовый пример 
V
    Опции темы
DigitSphinx
  Дата 28.6.2010, 01:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 442
Регистрация: 28.4.2007
Где: Москва

Репутация: нет
Всего: 3



3й вопрос за неделю  smile  так уж получилось что на работе делать нечего вот и читаю перл ради интереса !
проблема с кукиз такая :
прочитал множество страниц инфы про куки и как сними работать, а у меня не работает и все ! вместо того чтобы создать куки браузер просто выводит мне строку в странице и все, куки включены во всех браузерах!
браузер = Opera, Mozilla Firefox, Google Chrome, Internet Explorer все дают один и тот же результат.
код такой (уже тупо скопированный из инета)

Код

use CGI qw(:standard);
$cookie = cookie(-name=>'key',-value=>'val',-expires=>'+1M');
print header(-cookie=>$cookie);
print start_html;
print h1("WELCOME");
print end_html;


@allCookies = cookie();
print header;
print start_html;
foreach $cookieName(@allCookies)
{
        print br;
        print "The value of the $cookieName is: ";
        print cookie($cookieName);
}
print end_html;


результат

Код

Set-Cookie: key=val; path=/; expires=Tue, 27-Jul-2010 22:34:24 GMT Date: Sun, 27 Jun 2010 22:34:24 GMT 
WELCOME
Content-Type: text/html; charset=ISO-8859-1



--------------------
Чтобы пробить стену лбом нужен или большой разбег, или много лбов.
(Альберт Эйнштейн)
Умен ты или глуп, велик ты или мал, не знаем мы, пока ты слова не сказал.
(Альберт Эйнштейн)
user posted image
PM MAIL ICQ   Вверх
ginnie
Дата 28.6.2010, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 6.1.2008
Где: Москва

Репутация: 38
Всего: 49



DigitSphinx, раз у Вас Set-Cookie отображается в браузере, значит оно выводится не в заголовке, где должно бы, а в теле ответа. Возможно проблема связана с настройками web-сервера.


--------------------
Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг)
PM MAIL Skype Jabber   Вверх
DigitSphinx
Дата 28.6.2010, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 442
Регистрация: 28.4.2007
Где: Москва

Репутация: нет
Всего: 3



Цитата(ginnie @  28.6.2010,  13:28 Найти цитируемый пост)
Возможно проблема связана с настройками web-сервера.


вот содержимое html файла, на сколько я понял строка Set-Cookie не в блоке <head></head> а это плохо ?! )))

Код

Set-Cookie: key=val; path=/; expires=Wed, 28-Jul-2010 12:57:29 GMT
Date: Mon, 28 Jun 2010 12:57:29 GMT
Content-Type: text/html; charset=ISO-8859-1

<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h1>WELCOME</h1>
</body>
</html>Content-Type: text/html; charset=ISO-8859-1

<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>

</body>
</html>



--------------------
Чтобы пробить стену лбом нужен или большой разбег, или много лбов.
(Альберт Эйнштейн)
Умен ты или глуп, велик ты или мал, не знаем мы, пока ты слова не сказал.
(Альберт Эйнштейн)
user posted image
PM MAIL ICQ   Вверх
ginnie
Дата 28.6.2010, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 6.1.2008
Где: Москва

Репутация: 38
Всего: 49



DigitSphinx, три верхние строчки - поля заголовка, но у Вас они попадают в тело ответа. У Вас либо ошибка в скрипте, либо в настройках web-сервера. Попробуйте написать тестовый скрипт, в котором измените content-type и выведите строку:

Код

use CGI qw(:standard);
print header('text/plain');
print 'Test';


И попробуйте сделать запрос к серверу из консоли - так можно посмотреть ответ сервера целиком, вместе с заголовками.

Это сообщение отредактировал(а) ginnie - 28.6.2010, 16:15


--------------------
Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг)
PM MAIL Skype Jabber   Вверх
DigitSphinx
Дата 29.6.2010, 00:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 442
Регистрация: 28.4.2007
Где: Москва

Репутация: нет
Всего: 3



все браузеры дали один и тот же результат

Код

Content-Type: text/plain; charset=ISO-8859-1

Test


что совпадает с исходным кодом страницы!
но Perl Express просто показал строку "Test"
теперь из cmd

Код

>telnet
>set localecho
>open 127.0.0.1 80
>GET / HTTP/1.0



Код

HTTP/1.0 200 OK
Date: Mon, 28 Jun 2010 21:15:40 GMT
Server: Microsoft-IIS/7.0

Content-Type: text/plain; charset=ISO-8859-1

Test

Подключение к узлу утеряно.

Нажмите любую клавишу...


если использовать HTTP/1.1 в ответ "Bad request"

я все равно не понял где косяк ! 
в настройках IIS7 есть "Заголовки ответов HTTP" там единственная строка 
"X-Powered-By" значение "ASP.NET" тип элемента "Локальный"


--------------------
Чтобы пробить стену лбом нужен или большой разбег, или много лбов.
(Альберт Эйнштейн)
Умен ты или глуп, велик ты или мал, не знаем мы, пока ты слова не сказал.
(Альберт Эйнштейн)
user posted image
PM MAIL ICQ   Вверх
ginnie
Дата 29.6.2010, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 6.1.2008
Где: Москва

Репутация: 38
Всего: 49



Цитата(DigitSphinx @  29.6.2010,  00:20 Найти цитируемый пост)
я все равно не понял где косяк ! 

Надо погуглить и найти эту страницу, где написано:
Цитата

There are at least two different ISAPI extensions with ActivePerl. You should make sure that you use PerlEx30.dll with IIS 7. If you use perlis.dll, you may find that response headers sent from your Perl script are added to your response page instead of going back to the client as headers.



--------------------
Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг)
PM MAIL Skype Jabber   Вверх
DigitSphinx
  Дата 29.6.2010, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 442
Регистрация: 28.4.2007
Где: Москва

Репутация: нет
Всего: 3



я уже не помню где я читал про настройку IIS7 но я точно помню там было сказано что юзать надо perlis.dll !
поменял на PerlEx30.dll и куки заработали  smile 

ginnie, Спасибо! с меня пиво  smile 

ЗЫ в попытках понять что с IIS я плюнул и установил Apache, теперь у меня голова болит уже по другим вопросам )))


--------------------
Чтобы пробить стену лбом нужен или большой разбег, или много лбов.
(Альберт Эйнштейн)
Умен ты или глуп, велик ты или мал, не знаем мы, пока ты слова не сказал.
(Альберт Эйнштейн)
user posted image
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0493 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.