Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];

Вниз

Проблемы с CGI-приложениями   Найти похожие ветки 

 
SergProger ©   (2006-05-01 13:00) [0]

Всем привет! Люди, объясните мне пожалуйста, как писать CGI-приложения. Пробовал написать такое:

program CGI_test;
{$APPTYPE CONSOLE}
{$E CGI}
begin
 WriteLn("<HTML>");
 WriteLn("<HEAD>");
 WriteLn("<TITLE>Простейшее CGI приложение</TITLE>");
 WriteLn("<META http-equiv="Content-Type" content="text/html; charset=windows-1251">");
 WriteLn("</HEAD>");
 WriteLn("<BODY>");
 WrОтiteLn("<CENTER><H1>HELLO WORLD</H1></CENTER>");
 WriteLn("</BODY>");
 WriteLn("</HTML>");
end.

Компилируется нормально, но на сервере запускаться оно не хочет. Объясните мне, в чём проблема?


 
alex-drob ©   (2006-05-01 13:21) [1]

На сервере поддержка cgi есть?
Файл находиться в каталоге cgi-bin?
Что происходит при запуске файла на сервере?


 
SergProger ©   (2006-05-01 13:33) [2]

Сервер поддерживает CGI, файл находится в нужном каталоге, при запуске пишет: "CGI script error".


 
Anatoly Podgoretsky ©   (2006-05-01 13:34) [3]

Серверу можно верить.


 
SergProger ©   (2006-05-01 13:43) [4]

Сервер www.yard.ru Та же проблема на сервере www.holm.ru


 
TUser ©   (2006-05-01 14:16) [5]

А http заголовки не надо писать?

Кроме того, - на сервере тебе разрешено запускать виндоусовские программы в качестве cgi?


 
Sergey Masloff   (2006-05-01 14:20) [6]

TUser ©   (01.05.06 14:16) [5]
>на сервере тебе разрешено запускать виндоусовские программы в >качестве cgi?
Вот я тоже удивился

Кстати заголовки можно не писать если сервер под виндой все будет работать


 
DrPass ©   (2006-05-01 14:31) [7]

Попробуй вместо writeln попользовать GetStdHandle(STD_HANDLE_OUTPUT) и соответственно WriteFile. Как показывает практика, writeln НЕ ПИШЕТ в стандартный поток вывода, а выводит сразу на консоль.


 
Sergey Masloff   (2006-05-01 14:44) [8]

DrPass ©   (01.05.06 14:31) [7]
Пишет-пишет.
Кстати вышеприведенный код работает


 
DrPass ©   (2006-05-01 16:30) [9]


> Sergey Masloff   (01.05.06 14:44) [8]

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


 
SergProger ©   (2006-05-01 23:05) [10]

Вот если бы кто-нибудь мне объяснил, как пользоваться процедурой WriteFile...


 
DrPass ©   (2006-05-02 00:19) [11]

А что там сложного?
uses
 windows;
var
 h: THandle;
 cnt: cardinal;
begin
 h:= GetStdHandle(STD_OUTPUT_HANDLE);
 WriteFile(h, "<HTML>", 6, cnt, nil);
 WriteFile(h, "<HEAD>", 6, cnt, nil);
 WriteFile(h, "<TITLE>Простейшее CGI приложение</TITLE>",
   length("<TITLE>Простейшее CGI приложение</TITLE>"), cnt, nil);
end.


 
SergProger ©   (2006-05-03 13:09) [12]

OK, спасибо, понял. Дело в том, что с WriteFile я впервые сталкиваюсь... :-)


 
SergProger ©   (2006-06-01 01:39) [13]

Но всё-таки, даже с процедурой WriteFile приложение не хочет работать. Кроме того, я выяснил, что сервер работает под Unix. Зацените работу, если хотите >>> http://sergproger.h16.ru



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.04 c
11-1136982335
Vadim Petrov
2006-01-11 15:25
2006.10.29
Кладову - KolAdd


2-1160668978
redlord
2006-10-12 20:02
2006.10.29
в каком потоке работает ServerSocket1ClientRead


15-1160233451
ArtemESC
2006-10-07 19:04
2006.10.29
Какие знания необходимы системному администратору...


2-1161064765
DevilDevil
2006-10-17 09:59
2006.10.29
Как правильно работать с Битмапом?


3-1157362881
parovoZZ
2006-09-04 13:41
2006.10.29
Упростить запрос





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский