1. Как установить скрипт.
2. Ошибка 500... 1. Как установить скрипт.
Описать все нюансы, возникающие при установке CGI скриптов, просто невозможно(да и не нужно). Для этого почти с каждым скриптом его автор предлагает вам файл с описанием установки скрипта, как правило этого достаточно.
Если же вы такого файла не обнаружили, то предлагаю вам такой порядок действий:
1. Вы выкачиваете из Интернета архив со скриптами, например script.zip
2. Распаковываете его себе на локал, предположим в директорию D:!
3. Смотрите в каждом скрипте (*.cgi или *.pl) первую строку и меняете ее на нужную вам например #!/usr/local/bin/perl
(где стоит у вас/у провайдера перл)
4. Смотрите конфигурационные файлы (если они есть) и подставляете туда свои значения
5. Заливаете на свой сайт в папку cgi-bin свои скрипты
6. Устанавливаете права доступа/выполнения для них.
Последний пункт рассмтрим более подробно, так как для многих это становится большой проблемой, хотя на самом деле это очень просто. Вот как это делается в некоторых FTP менеджерах:
FAR: выбираете файл, который уже на вашем сервере, и нажимаете Ctrl-A, после этого для (*.cgi или *.pl) устанавливаете
rwx-rx-rx ([X][X][X]-[X][ ][X]-[X][ ][X]) для остальных в основном
rwx-rwx-rwx ([X][X][X]-[X][X][X]-[X][X][X]), если в каком-нить readme.txt для вас не написано, что ставить нужно что нибудь другое!
WS_FTP: выбираете необходимый файл, после нажатия на правую кнопку мыши появится список опций. Выбираете chmod (UNIX). Появится диалоговое окно с девятью checkbox'ми(отмеченные пункты могут и не отображать текущие атрибуты файла). Установите или снимите метки для установления требуемого права доступа. Нажимаете на ОК.
CuteFTP: выбираете необходимый файл. Из меню "Commands" выбираете "Advanced commands", в подменю выбираете "Change File Attributes..." или в последних версиях "CHMOD". Или можно кликнув правой кнопкой мыши из появившегося списка выбираем "Change file attributes" или в последних версиях "CHMOD". Появится диалоговое окно с девятью checkbox'ми(отмеченные пункты могут и не отображать текущие атрибуты файла).
Установите или снимите метки для установления требуемого права доступа или можете ввести число(три цифры) в поле "Manual". Нажимаете "OK".
2. Ошибка 500...
О-о-чень популярная ошибка, возникающая при первом запуске скрипта с сервера.
Это может быть вызвано различными причинами. Проверьте следующее:
1. Путь к интерпретатору Perl.
Это первая строка, начинающаяся с символов #!. Вы должны убедиться, что путь соответствует пути к интерпретатору у хостера. Путь может быть таким:
#!/usr/bin/perl
2. Content Type:
Перед выводом информации, в скрипте ОБЯЗАТЕЛЬНО должна быть строка:
print ("Content-type: text/html ");
Заметьте, что здесь два символа . Символ означает перевод строки. Первый такой символ завершает строку, а следующий означает пустую строку, говорящую серверу, что заголовок закончен и остальное - это информация, которую необходимо переслать к броузеру. Эта строка должна идти перед другими операторами print.
3. Пути:
Существует два типа путей к файлам на сервере. Первый, это URL пути, которые используются в HTML для указания файла, а также в броузере для указания страницы. Второй тип - системные пути, используемые для указания файла относительно файловой системы сервера.
Будьте внимательны при редактировании путей в скрипте или в файле конфигурации скрипта.
4. Права доступа:
Помните, что скрипты и каталоги должны иметь атрибут 755, другие файлы - 644.
Как правило, автор скрипта указывает какие атрибуты необходимо поставить на файлы, входящие в комплект скриптов.
5. Загрузка на сервер по FTP:
Скрипты ОБЯЗАТЕЛЬНО должны загружаться на сервер в ASCII режиме, а не в binary.
6. cgi-bin:
Как правило все CGI/Perl скрипты должны находится в каталоге "cgi-bin". Убедитесь, что ваш хостер не требует размещения файлов скриптов в каком-либо другом каталоге.