FAQ по хостингу

1. Какой charset и lang используется при включении директивы «use locale» в программах на Perl?

charset и lang используется соответствии с переменной окружения LANG. По умолчанию это ru_UA, и koi8-ru. Если у Вас есть своя locale, то можно использовать ее.

2. Как заставить работать SSI в моих страницах?

По умолчанию сервер распознает SSI директивы только в файлах с расширением .shtml. Если Вы хотите, чтобы они распознавались и в файлах с расширениями, например .html и .htm, нужно добавить в .htaccess:

AddHandler server-parsed .shtml .htm .html

3. Как правильно прописать SSI-команду «#exec cgi»?

<!--#exec cgi="/cgi-bin/script.pl"-->

Пример неправильного варианта, который не будет работать:

<!--#exec cgi="http://mysite.com.ua/cgi-bin/script.pl"-->

4. Простой и точно правильный скрипт на Perl не работает со странной диагностикой. В чем может быть дело?

Проверьте, не имеет ли файл «досовских» переводов строк. Напоминаем, что в DOS строки заканчиваются двумя байтами с шестнадцатиричными кодами 0A 0D, а в Unix только одним с кодом 0A. Визуально лишний код может быть незаметен, но Perl будет отказываться выполнять такую программу. При пересылке файлов по ftp в ascii mode производится автоматическое добавление (или убирание, в зависимости от направления пересылки) лишнего кода в конце строки.

5. Как сделать, чтобы по умолчанию загружался не index.html, а страница с другим именем?

В .htaccess в директиве DirectoryIndex перечислите все нужные имена страниц. По умолчанию будет показываться первая существующая из этого списка.

Например, нужно, чтобы по умолчанию запускался скрипт default.php.

Добавте в .htaccess:

DirectoryIndex index.html default.php

Теперь если index.html будет отсутвовать в каталоге, по умолчанию будет использоваться default.php.

6. Как я могу организовать парольный доступ к моим страницам, используя возможности вебсервера Apache?

Вы можете прочитать об этом в описании директив AuthType, AuthName, AuthUserFile, AuthGroupFile, Require в документации к Apache, а также читайте описание команды htpasswd.

Типичный пример .htaccess:

AuthType Basic
AuthName "Restricted Directory"
AuthUserFile ../passwdAuth
GroupFile ../group
Require valid-user

содержание файла group:

admin: admin

содержание файла passwd:

admin:pEBxmn19P0XBg

7. Я пытаюсь передавать моему скрипту путь к файлу в качестве параметра, но у меня ничего не получается. В чем может быть проблема?

Например, Вы желаете использовать URL следующего вида: http://www.site.ua/myscript/dir/file.html, где myscript — на самом деле php-скрипт myscript.php, а /dir/file.html — передаваемый ему параметр.

Для реализации этой технологии Вам необходимо выполнить следующие действия:

  • добавить в Ваш .htaccess файл директиву MultiviewsMatch Handlers. Она необходима для того, чтобы к файлу myscript.php можно было обращаться как к myscript;
  • в php.ini включить опцию cgi.fix_pathinfo = 1. Это необходимо для того, чтобы переменная PATH_INFO обрабатывалась корректно. Именно ее Вы можете использовать для получения информации о пути-параметре передавемого скрипту.