Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Темы - restart2003

Страницы: [1] 2
1
Веб Сервера / Скрыть версию апача
« : 05 Января 2007, 14:52:37 »
Надобно мне полностью скрыть версию в апаче 1.3.37
Чтобы в частности при листинге директории не было строчки с номером версии.

Залез в доки, нашёл директиву
ServerSignature
которая " allows the configuration of a trailing footer line under server-generated documents (error messages, mod_proxy ftp directory listings, mod_info output, ...). "

Добавляю в хттпд
ServerTokens Prod
ServerSignature Off

В заголовках все ок, версии нет, а в подвале листингов директорий - Apache/1.3.37 Server at site.ru Port 80
Почему?

2
Perl / Получение имени закаченного файла
« : 04 Января 2007, 02:17:37 »
Дано: закачивается файл стандартно через POST. Надо скриптом узнать его имя. Вот эта конструкция:
        $uploaded_file=~ /[\\\\\\/:]([^\\\\\\/:]+)$/;
        $filename = "$1";
отлично работает при загрузке из IE, в опере же стандартно filename пуст. Танцевал долго и упорно, перепробовал кучу вариантов, но так и не пришёл к итогу.

Подскажите кроссбраузерный вариант и желательно просвятите - что не так в этом. Спасибо.

3
Perl / Проблема с Fast CGI
« : 10 Ноября 2006, 00:01:52 »
Осваиваю сабж. Сделал всё по инструкции, установил mod_fastcgi и fcgi. Прописал что надо в httpd.conf
Вот это даже заработало:

#!/usr/bin/perl
use CGI::Carp qw(fatalsToBrowser);
use FCGI;
 my $request = FCGI::Request();
my $i=0;

 while($request->Accept() >= 0)
  {

print "Content-type: text/html\\n\\n";
print "Counter: $i";
$i++;
 }

Скрипт test.fcgi выполнялся и при каждом запросе счётчик инкрементился.

Потом попробовал добавить пару строчек кода, перезалил скрипт и теперь всё вылетает с 500 ошибкой. И даже этот ранее работавший скрипт пытаюсь запустить - та же 500 ошибка. Апача перезагружал не раз и не два. С чем может быть связано?

4
Perl / Докачка - файлархив на перле
« : 03 Ноября 2006, 23:30:15 »
Есть скрипт, отдающий файло.
Вот кусок кода, отвечающий непосредственно за отдачу:

print "Content-Length: $size\\n";
print "Content-Type: application/$ext\\n\\n";
binmode(STDOUT);
open (TXTFILE, "../../files/$file.$ext") || die;
while () {print}
close(TXTFILE);

Всё хорошо, но докачка не поддерживается. Как бы её прикрутить? Самолично видел perl-скрипты, отдающие файло и при этом поддердивающие докачку.

5
JavaScript & JScript / selection в опере
« : 26 Сентября 2005, 00:23:40 »
Есть форум. Есть кнопка, по которой выделенный мышкой текст отправляется в TEXTAREA с id \'forma\' в обрамлении тегов quote.
Вот функция:

function text2area() {
 if (document.getSelection) {txt_block=document.getSelection();}
 else if (document.selection) {txt_block=document.selection.createRange().text;}
 if (txt_block != "") {document.getElementById("forma").value+="[qu0te]"+txt_block+"[/qu0te]";}
}

В Мозилле и ИЕ работает, а в Опере - нет (переменная txt_block - пустая). Как можно модифицировать?

6
Perl / Разбиение длинной строки
« : 25 Сентября 2005, 23:08:54 »
Пользователи моего форума часто норовят оставить сообщения, в которых есть длинные слова, типа "пооооооооооооммммммммммммооооооооггггииииииттттее" или "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!". Они иногда вызывают горизонтальную полосу прокрутки.
Хочу написать код, ставящий пробел в последовательность непробельных символов, превышающую по длине n(например 40).
Пытался разными методами, получается плохо.
Вот один из вариантов, на практике работающий криво (Он разбивает сообщение на подстроки по сто символов, и, если внутри какой-то подстроки есть 50 или более непробельных символов подряд, ставит поседине пробел):

my $c= 1 + int length($message)/100 ;
for (my $i=0;$i<$c; $i++)
 {
 $buffer = undef;
 $buffer = substr($message,$i*100,100);

  if($buffer =~ /\\S{50,}/)
  {
  my $part1 = substr($buffer,0,50);
  my $part2 = substr($buffer,50,50);
  $buffer = $part1.\' \'.$part2;
  }
 $message2 .= $buffer;
  }
$message = $message2;
 

Хотелось всё-таки создать нормально работающий код. Своими силами пока не получается.

7
Веб Сервера / Кодировка...
« : 29 Июля 2005, 05:17:19 »
Содержание головного .htaccess (кусок):
AddDefaultCharset windows-1251
CharsetSourceEnc windows-1251
RewriteEngine On
RewriteCond %{HTTP_HOST} ^http://www.site.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

При запросе на http://www.site.ru получаю через валидатор вот что в заголовках:
HTTP Status Code: HTTP/1.1 301 Moved Permanently
Date: Fri, 29 Jul 2005 01:27:49 GMT
Server: E-Neverland DataPalm/1.7
Location: http://www.site.ru/
Content-Length: 808
Connection: close
Content-Type: text/html; charset=iso-8859-1
Redirect Target: http://site.ru/

Теперь, внимание, вопрос. Какого лешего у меня в кодировке стоит iso?

8
Perl / Кодировка и multipart/form-data
« : 14 Мая 2005, 06:59:19 »
Странно, почему-то на Perl-форуме при отправке данных из формы multipart/form-data методом POST меняется кодировка страницы на ISO, хотя в метатегах явно указана windows-1251 ().  При отправке из обычной формы, или при сёрфинге форума всё впорядке. Никто не сталкивался?

9
Perl / Send Mail
« : 14 Февраля 2005, 03:14:18 »
Здравствуйте!
Я провожу рассылку на ~500 человек (число постоянно увеличивается).
Делаю весьма коряво:


my $mail_prog = "/usr/sbin/sendmail";
foreach $email (@mail) {
open (MAIL, "|$mail_prog -t") || die "cannot open mailprog";
print MAIL "To: $email <$email>\\n";
print MAIL "Reply-to: $from <$from>\\n";
print MAIL "From: $from <$from>\\n";
print MAIL "Subject: $subject\\n";
print MAIL "Content-type: text/html; charset=\\"Windows-1251\\"\\n\\n";
print MAIL "$tosend";
print MAIL "\\n\\n" ;
close(MAIL);
}


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

10
Платный хостинг / mod_perl
« : 10 Января 2005, 07:46:20 »
Сабж - это модуль к апачу, так? Интересно, а насколько велика вероятность встретить его на шаред-хостинге? Знаю, что например модули вроде mod_rewrite стоят почти везде. А mod_perl?

11
Perl / определение referrer
« : 27 Января 2004, 02:00:55 »
Для большей секурности своего форума решил в скрипт ответа/создания новой темы всунуть проверку refferer, чтобы параметры не передавались с посторонних сайтов. Пока сделал через if($ENV{HTTP_REFERRER} =~ /$forum_url/i). Но ведь никто не мешает передать скрипту параметры со страницы http://xakep.ru/hack.html?урл_моего_форума. Отсюда плавно вытекает вопрос: как проверить, что искомая строка не находится после знака \'?\', т.е. является не параметром, а реальным урл-ом. Только с помощью регэкспов?

12
Perl / GD
« : 17 Января 2004, 14:23:37 »
У кого-нить есть исходники функций по созданию уменьшенных копий изображений(размер/вес) и/или нанесения урл на изображения, используя GD?

13
Perl / Установка модуля локально
« : 06 Января 2004, 13:32:21 »
Скачал модуль Image::Magick. Распаковал, хочу установить у себя на компе. Захожу в директорию с перлом, пишу ppm install C:\\Perl\\modules\\Image-Magick.ppd
Он мне в ответ: Failed to load PPM_Dat file
Can\'t use undefined value as a scalar reference at C:\\Perl\\site\\lib\\PPM.pm line 1678, line 40.

14
Снова здравствуйте! Сейчас я делаю поиск по небольшой текстовой БД. С поиском по целому выражению я разобрался. Но вот в чём проблема: после поиска по группе слов надо бы искать каждое слово в отдельности. Хотелось бы каждое слово вынести в отдельную переменную, или в массив, например $var1, $var2 или $var[0]... Как это сделать, зная заранее количество введённых слов, я знаю:
($var1,$var2) = split(/ /,$query); #пример с 2-мя словами
Но ведь заранее кол-во введённых слов мне неизвестно. Как бы это получше реализовать? Наверняка перед вами стояла когда-нибудь похожая задача.

15
Perl / Sendmail
« : 15 Декабря 2003, 04:16:54 »
Скажите пожалуйста, я отправляю почту стандартным способом:
open(SENDMAIL, "|$mailprog $mailto");
print SENDMAIL "From: $autor\\n";
print SENDMAIL "To: $mailto\\n";
print SENDMAIL "Subject: $subj\\n";
print SENDMAIL "$comments \\n";
close(SENDMAIL);

Но при отправке HTML-кода в почтовом клиенте отображается сам код, а не страница. Как указать почтовому клиенту, что это HTML-пага, а не plain text?

Страницы: [1] 2