Такое дело: начал изучать php по книге Котерова. Так вот, там в 3-й главе даётся пример cgi-сценария, написанного на C, осуществляющего генерацию простейшей странички.
Содержание скрипта не важно(тем более, gcc не ругается), важно другое - браузер упорно не хочет делать то, что задумано скриптом.
Итак, имею:
1. Локальный, правильно настроенный сервер.
2. Сайт под названием test.
3. Папки www и cgi-bin внутри сайта
4. Работающий файлик index.php(с выводом информации о php). То есть это показатель, что сам сайт работает нормально.
5. В папке cgi-bin - корректно откопиленный исходник скриптика на C под названием script.cgi.
И вот я, как указано в книге, набираю в строке браузера: http://test/cgi-bin/script.cgi
В ответ мне стандартная ошибка - файл не найден.
Очень хотелось бы услышать мнение и советы грамотных людей по решению данной проблемы.
Я понимаю, что проблема не существенна, но просто хотелось бы начать действительно понимать всю подноготную веб-программирования.
Всем заранее спасио.
Спустя 3 минуты, 58 секунд (17.12.2011 - 23:54) johniek_comp написал(а):
Если файла нет, значить его нет, веб это точная наука. Проверьте все ещё раз. Что-то на путях.
Спустя 7 секунд (17.12.2011 - 23:54) Игорь_Vasinsky написал(а):
не установлен perl модуль
дайте глянуть на phpinfo()

Спустя 3 минуты, 46 секунд (17.12.2011 - 23:58) lisdrumz написал(а):
Игорь, сюда скинуть весь вывод phpinfo()?
Спустя 4 минуты, 4 секунды (18.12.2011 - 00:02) Игорь_Vasinsky написал(а):
открой - сохрани страницу и прикрепи сюда
Спустя 5 минут, 20 секунд (18.12.2011 - 00:07) lisdrumz написал(а):
Цитата (Игорь_Vasinsky @ 17.12.2011 - 21:02) |
открой - сохрани страницу и прикрепи сюда |
Вот. Только пришлось изменить расширение с .html на .txt
Спустя 1 минута, 20 секунд (18.12.2011 - 00:09) Игорь_Vasinsky написал(а):
отбой - вот - почитай
http://www.codenet.ru/webmast/apache/Apach...ache_config.php
http://dedicatesupport.com/archives/52
модуль усановлен. возможно нужны корректировки .htaccess
http://www.codenet.ru/webmast/apache/Apach...ache_config.php
http://dedicatesupport.com/archives/52
модуль усановлен. возможно нужны корректировки .htaccess
Спустя 5 минут, 19 секунд (18.12.2011 - 00:14) lisdrumz написал(а):
Игорь, не подскажете, где мне найти файл httpd.conf. Этот файл у меня есть в корне папки /etc/apace2, но он пуст. А в папке /etc/apache2/conf.d такого файла нет.
Спустя 5 минут, 28 секунд (18.12.2011 - 00:20) Игорь_Vasinsky написал(а):
а ось то какая?
как устанавливал? по отделности или пакет какой то типа XAMPP, denwer ???
FreeBSD
apache 1.3
/usr/local/etc/apache/httpd.conf
apache 2.2
/usr/local/etc/apache22/httpd.conf
Linux
CentOS, Fedora (Redhat-системы)
/etc/httpd/conf/httpd.conf
Debian, Ubuntu
apache 1.3
/etc/apache/httpd.conf
apache 2.2
/etc/apache2/apache2.conf
Gentoo
apache 2.0
/etc/apache2/httpd.conf
Ubuntu
apache 2.0
/etc/apache2/apache2.conf
как устанавливал? по отделности или пакет какой то типа XAMPP, denwer ???
FreeBSD
apache 1.3
/usr/local/etc/apache/httpd.conf
apache 2.2
/usr/local/etc/apache22/httpd.conf
Linux
CentOS, Fedora (Redhat-системы)
/etc/httpd/conf/httpd.conf
Debian, Ubuntu
apache 1.3
/etc/apache/httpd.conf
apache 2.2
/etc/apache2/apache2.conf
Gentoo
apache 2.0
/etc/apache2/httpd.conf
Ubuntu
apache 2.0
/etc/apache2/apache2.conf
Спустя 3 минуты, 47 секунд (18.12.2011 - 00:23) lisdrumz написал(а):
Устанавливал по отдельности. ОСЬ - Linux Mint 12 "Lisa".
Полазил по всем путям, которые указаны в Вашем сообщении - ни фига. По идее, путь должен быть /etc/apache/httpd.conf - только вот у меня папка apache2, в которой есть файлик httpd.conf, но он пуст.
Полазил по всем путям, которые указаны в Вашем сообщении - ни фига. По идее, путь должен быть /etc/apache/httpd.conf - только вот у меня папка apache2, в которой есть файлик httpd.conf, но он пуст.
Спустя 4 минуты, 2 секунды (18.12.2011 - 00:27) Игорь_Vasinsky написал(а):
на минте /etc/apache2/apache2.conf должен быть, а httpd.conf - пустой, он для добавления своих правил, потом инклудиться в общий конфиг.
Спустя 3 минуты, 51 секунда (18.12.2011 - 00:31) lisdrumz написал(а):
Цитата (Игорь_Vasinsky @ 17.12.2011 - 21:27) |
на минте /etc/apache2/apache2.conf должен быть, а httpd.conf - пустой, он для добавления своих правил, потом инклудиться в общий конфиг. |
Понял, благодарю. То есть, я должен в конец этого файла добавить
ScriptAlias /cgi-bin "/home/home_dir/cgi-bin", да? Только не подскажете, какую именно директиву мне нужно выставить? Основная директория у меня - /home/lis/sites - в ней хранятся все сайты.
Спустя 2 минуты, 54 секунды (18.12.2011 - 00:34) Игорь_Vasinsky написал(а):
если папка cgi-bin одна для всех сайтов то /home/lis/sites/cgi-bin
а если используются виртуальные хосты (домены) - то ещё в конфигах этих доменов тоже нужно прописывать
а если используются виртуальные хосты (домены) - то ещё в конфигах этих доменов тоже нужно прописывать
Спустя 3 минуты, 9 секунд (18.12.2011 - 00:37) lisdrumz написал(а):
Цитата (Игорь_Vasinsky @ 17.12.2011 - 21:34) |
если папка cgi-bin одна для всех сайтов то /home/lis/sites/cgi-bin а если используются виртуальные хосты (домены) - то ещё в конфигах этих доменов тоже нужно прописывать |
У меня второй случай - виртуальные хосты.
То есть, как я, дурак, понял(если понял) - нужно в /ets/apache2/sites-available/ в каждом конфиге каждого сайта прописать собственный путь для выполнения скриптов, а уже в apache2.conf ничего прописывать не надо, правильно?
Спустя 19 минут, 38 секунд (18.12.2011 - 00:57) Игорь_Vasinsky написал(а):
да ты правильно понял.
в apache2.conf раскоментировать (если закомментрировно) - строки для запуска этого модуля
потом рестарт сервера
в apache2.conf раскоментировать (если закомментрировно) - строки для запуска этого модуля
потом рестарт сервера