Не работает CGI

Все о скриптах

Модераторы: Art.i, vasya

Не работает CGI

Сообщение ijkl » Чт апр 16, 2015 1:49 am

Стандартный шаблон Debian7+isp5.
В ips отредактировл пользователя: разрешил использовать CGI.
Затем отредактировал домен: разрешил использовать CGI.
При этом в папке домена образовалась папка cgi-bin. В конфиге Апача в настройках хоста также прописались настройки:

Код: выделить все
#user 'MyUserName' virtual host 'MySiteName' configuration file
<VirtualHost MyIP:80>
   ServerName MySiteName
   AddDefaultCharset UTF-8
   AssignUserID MyUserName MyUserName
   DirectoryIndex index.html index.php
   DocumentRoot /var/www/MyUserName/data/www/MySiteName
   ServerAdmin admin@MySiteName
   ServerAlias www.MySiteName
   CustomLog /var/www/httpd-logs/MySiteName.access.log combined
   ErrorLog /var/www/httpd-logs/MySiteName.error.log
   ScriptAlias /cgi-bin/ /var/www/MyUserName/data/www/MySiteName/cgi-bin/
   ScriptAlias /php-bin/ /var/www/php-bin/MyUserName/
   <FilesMatch "\.ph(p[3-5]?|tml)$">
      SetHandler application/x-httpd-php5
   </FilesMatch>
   AddHandler application/x-httpd-php5 .php .php3 .php4 .php5 .phtml
   Action application/x-httpd-php5 /php-bin/php
</VirtualHost>
<VirtualHost MyIP:443>
   ServerName MySiteName
   AddDefaultCharset UTF-8
   AssignUserID MyUserName MyUserName
   DirectoryIndex index.html index.php
   DocumentRoot /var/www/MyUserName/data/www/MySiteName
   ServerAdmin admin@MySiteName
   ServerAlias www.MySiteName
   CustomLog /var/www/httpd-logs/MySiteName.access.log combined
   ErrorLog /var/www/httpd-logs/MySiteName.error.log
   ScriptAlias /cgi-bin/ /var/www/MyUserName/data/www/MySiteName/cgi-bin/
   ScriptAlias /php-bin/ /var/www/php-bin/MyUserName/
   <FilesMatch "\.ph(p[3-5]?|tml)$">
      SetHandler application/x-httpd-php5
   </FilesMatch>
   AddHandler application/x-httpd-php5 .php .php3 .php4 .php5 .phtml
   Action application/x-httpd-php5 /php-bin/php
   SSLCertificateFile "/var/www/httpd-cert/MyUserName/MySiteName.crt"
   SSLCertificateKeyFile "/var/www/httpd-cert/MyUserName/MySiteName.key"
   SSLEngine on
</VirtualHost>
<Directory /var/www/MyUserName/data/www/MySiteName>
   Options +Includes +ExecCGI
</Directory>


Файл в папке cgi-bin с таким содержимым:
Код: выделить все
#!/bin/sh
echo "cgi ok"

Права доступа к файлу 755. Атрибуты папки cgi-bin 751, я их не менял.

При попытке запустить выдает Internal Server Error.
В логах сайта такое.
Код: выделить все
[Thu Apr 16 00:01:56 2015] [error] [client ####] (13)Permission denied: exec of '/var/www/MyUserName/data/www/cgi-bin/test.cgi' failed
[Thu Apr 16 00:01:56 2015] [error] [client ####] Premature end of script headers: test.cgi


В корневом .htaccess указано Options +ExecCGI -Indexes -Includes +FollowSymLinks

В чем проблема?
ijkl
 
Сообщений: 215
Зарегистрирован: Чт окт 03, 2013 5:42 pm

Re: Не работает CGI

Сообщение ls » Чт апр 16, 2015 5:35 am

Код: выделить все
echo Content-type: text/html
echo

в начале скрипта должно быть - то есть выдать content-type и пустую строку

https://www.google.ru/searchq=%D0%BF%D1 ... 0%B5%D1%80

+ владелец файлы и группа должны быть MyUserName
* FirstVDS в twitter в facebook и в вконтакте *
ls
Support team
 
Сообщений: 6384
Зарегистрирован: Чт мар 01, 2007 10:36 am
Откуда: FirstVDS

Re: Не работает CGI

Сообщение ijkl » Чт апр 16, 2015 6:44 am

Спасибо большое!
ijkl
 
Сообщений: 215
Зарегистрирован: Чт окт 03, 2013 5:42 pm


Вернуться в CGI, Perl, PHP

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3