Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: запуск как CGI
Форумы портала PHP.SU » » Программирование на C++ » запуск как CGI

Страниц (1): [1]
 

1. kilogram - 18 Марта, 2012 - 23:26:46 - перейти к сообщению
Изучаю пхп, там пишут что так не используют, но это важно знать как подключается cgi в пхп.

Вот написал код.
CODE (text):
скопировать код в буфер обмена
  1.  
  2. #include <iostream>
  3. #include <stdlib.h>
  4. using namespace std;
  5.  
  6. void main(){
  7.  
  8. char *RemoteAddr = getenv("REMOTE_ADDR");
  9. char *QueryString = getenv("QUARY_STRING");
  10. cout<<"Content-type: text/html"<<endl<<endl;
  11. cout<<"<html><body>";
  12. cout<<"<h>Здравствуйте! Мы знаем о Вас все!</h1>";
  13. printf("Ваш IP-адрес: %s<br>",RemoteAddr);
  14. printf("Вот параметры, которые вы указали: %s", QueryString);
  15. cout<<"</body></html>";
  16. cin.get();
  17. }
  18.  


Скомпилировал программу, получил файл 1.exe, кинул этот файл возле файла index.php
Далее там пишут вот такое, что пишут, на фото вложил.
В файле index.php ничего не писал, там просто
PHP:
скопировать код в буфер обмена
  1. <?PHP echo 'Привет мир!'; ?>


Не могу понять, что в браузере ввести чтоб вызвать методом GET эту программу написанную на С++.
Когда ввожу так: http://test[dot]ru/1[dot]exe?a=1&b=2
происходит просто скачка файла 1.exe на компьютер, но не запуск cgi-программы(я так понял это называется любая программа написанная на ином языке, которую мы хотим запустить в браузере,верно?).

Подскажите, как запустить программу 1.exe?
2. caballero - 19 Марта, 2012 - 00:33:51 - перейти к сообщению
CGI настройкой апача подключается. PHP тут вообще никаким боком.
3. kilogram - 19 Марта, 2012 - 00:42:57 - перейти к сообщению
LoadModule cgi_module modules/mod_cgi.so Эта настройка апача которая позволяет запускать cgi-скрипты, расскоментирована. Как запустить код написанный на С++?
4. kilogram - 20 Марта, 2012 - 18:46:15 - перейти к сообщению
Апач находится у меня на диске С:\www
Я зашел в C:\www\conf
в файл httpd.conf
Ввел там такое:

CODE (text):
скопировать код в буфер обмена
  1.  
  2.  AddHandler cgi-script .cgi .pl .bat .exe
  3.     AddType cgi-script .exe
  4.  



Затем зашел в C:\www\conf нашел файл просто
httpd(текстовой) нашел там

CODE (text):
скопировать код в буфер обмена
  1.  
  2. <Directory "C:/www/cgi-bin">
  3.     AllowOverride None
  4.     Options None
  5.     Order allow,deny
  6.     Allow from all
  7. </Directory>
  8.  


и ввел ниже этого:

CODE (text):
скопировать код в буфер обмена
  1.  
  2. <Directory "C:/www/htdocs/test.ru/www">
  3. #тут могут быть и другие настройки типа AllowOverride или Allow
  4. Options ExecCGI
  5. </Directory>
  6.  


Ввожу такую ссылку: http://test[dot]ru/1[dot]exe?a=1&b=2
Опять скачивается файл 1.exe но не запускается

Переименовал файл 1.exe на 1.cgi и запустил http://test[dot]ru/cgi-bin/1[dot]cgi?a=1&b=2
Выдает ошибку:

CODE (text):
скопировать код в буфер обмена
  1.  
  2. Not Found
  3.  
  4. The requested URL /cgi-bin/1.cgi was not found on this server.
  5.  


5. caballero - 20 Марта, 2012 - 19:10:44 - перейти к сообщению
так положи файл в cgi-bin как требует denwer
6. kilogram - 20 Марта, 2012 - 22:29:29 - перейти к сообщению
Все , запустил программу на С++ в пхп, оказывается нужно было переименовать в расширение cgi расширение exeи кинуть в папку cgi апача программу, а не в cgi возле папки сайта или в папкe www-сайта.
Скажите, а для каких возможностях используются cgi, какие проги пишутся примерно чтоб использовать cgi для пхп?
7. caballero - 20 Марта, 2012 - 23:24:47 - перейти к сообщению
cgi не имеют отношения к PHP
так же как JSP, Ruby, ASP.NET, Perl и т.д.

до появления всего этого и использовалось CGI для сайтов. На фига оно тебе сейчас непонятно.
8. Мелкий - 21 Марта, 2012 - 08:25:10 - перейти к сообщению
kilogram пишет:
какие проги пишутся примерно чтоб использовать cgi для пхп?

PHP и есть CGI-приложение, как один из 3 вариантов установки (2 других: ближайший родственник CGI - fastCGI и последний - модуль Apache).
9. JustUserR - 21 Марта, 2012 - 10:16:10 - перейти к сообщению
kilogram пишет:
Not Found
The requested URL /cgi-bin/1.cgi was not found on this server.
В качестве основной потенцаильной причины, на основании которой осуществляяется предполагаемое некорректное функционирование целевого CGI-приложения, является осуществление включения несопоставимой конфигурации для системы alias-инга и действенного перенаправления на целевом виртуальном хосте, в информационных полях конфигурации на первичном пониженном уровне базового элементного трактования
Действительно для осуществления запуска CGI-приложений на web-сервере Apache в среде windows, необходимо обеспечения установки пути к реальному потоку исполнения на основании shebang-конструкции, или осуществления использование системного механизма сопоставления активных MIME-типов
Некоторая полезная информация в области предполагаемого вопроса предоставлена здесь http://forum.php.su/topic.php?fo...m=65&topic=3

 

Powered by ExBB FM 1.0 RC1