Здравствуйте.
Такая ситуация.
Нужно разместить скрипты CGI за пределы юзерского пути.
т.е. в папке etc я создаю папку cgi и размещаю туда скрипт g.cgi
В конфиге апача прописую:
DocumentRoot /etc/cgi
ScriptAlias /cgi/ /etc/cgi/
<Directory /etc/cgi>
AllowOverride All
Options +Includes -Indexes +ExecCGI
Action phpcgi-script /cgi-bin/php
<Files *.php>
SetHandler phpcgi-script
</Files>
</Directory>В итоге когда я захожу по линку my-domain.com/g.cgi у меня должен запускаться скрипт g.cgi
Но вместо этого у меня 500 Internal Server Error
При этом другие файлы отображаются нормально и все работает.
Тестил скрипт по SSH: perl /etc/cgi/g.cgi
Все работает.
т.е. на сервере есть поддержка CGI, т.к. когда я переношу скрипт g.cgi в обычную юзерскую директорию и исправляю пути в апаче, все работает прекрасно.
Грешу вот на что я, заливаю файлы в директорию /etc/cgi/ через клиент FileZilla в настройках указываю режим передачи файлов binary (двоичный) права на файл выставляю - 755
Но все равно при запуске идет 500 Internal Server Error.
Мне кажется что файлы заливаются не в binary режиме, из-за этого и ошибка 500 Internal Server Error.
Повторюсь, файлы заливаю через FileZilla через протокол SSH, т.к. нужен доступ к корневой директории, не через протокол FTP.
Думаю что протокол SSH не поддерживает binary режим.
Мне нужно чтоб файлы были именно в этой директории, помогите плиз советом, как обойти это ?