Насчет файла htaccess
Ну вот, сайт почти готов, но есть проблема: файл htaccess
Вот составил я htaccess:
DirectoryIndex index.php main.php
Options -Indexes
CharsetDefault windows-1251
CharsetSourceEnc windows-1251
Разместил его в корневом каталоге. Структура каталогов:
Каталог 1
- файл1
- файл2
- файл3
Каталог 2
- файл1
- файл2
- файл3
main.php
Вот какие вопросы по файлу htaccess
1) Каким образом сделать так, чтобы при наборе в адресной строке корневого каталога (http://host) страница main.php отображалась бы как главная?
В конфигурационном файле моего локального Apache написано index.htm, index.html.var. Наверняка то же самое будет прописано и у хостера. При этом
страница main.php как главная не отображается, хотя в файле htaccess (который я написал) обозначено:
DirectoryIndex main.php
2) Какова "протяженность" действия этого файла? Надо ли в строчке DirectoryIndex прописывать все названия файлов, которые я хочу установить по умоланию? Например, я хочу, чтобы в каталоге 2 как главная страница отображался бы файл, скажем, enter.php. Так вот: надо ли прописывать это название в корневой файл htaccess либо проще было бы сделать еще один экземпляр для каталога 2?
3) Допустим, я хочу под видом html-файла скрыть php-файл. Этот самы php-файл начинается и заканчивается тэгами <? и ?>, т.е. ни cтрочки "чистого" html там нет.
Пробовал прописать:
RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm
сервер выводит php-код как будто в "Блокноте"
4) Слышал, что из этого файла можно управлять движком PHP. Еще один вопрос: как написать инструкцию, управляющую прарметром magic_quotes? Ведь вполне возможно, что у хостера эта штука отключена...
5) Чтобы не выдавался листинг каталогов, прописал:
Options -Indexes
однако, серверу, похоже, наплевать...
Вот такие вопросы. Благодарю всех, кто обратил внимание на эту писанину и откликнулся.
1) Каким образом сделать так, чтобы при наборе в адресной строке корневого каталога (http://host) страница main.php отображалась бы как главная?
В конфигурационном файле моего локального Apache написано index.htm, index.html.var. Наверняка то же самое будет прописано и у хостера. При этом
страница main.php как главная не отображается, хотя в файле htaccess (который я написал) обозначено:
DirectoryIndex main.php
DirectoryIndex directive
Context: server config, virtual host, directory, .htaccess
Из чего можно сделать вывод что в .htaccess можно его переопределять. Значит криво чё то делаешь...
2) Какова "протяженность" действия этого файла? Надо ли в строчке DirectoryIndex прописывать все названия файлов, которые я хочу установить по умоланию? Например, я хочу, чтобы в каталоге 2 как главная страница отображался бы файл, скажем, enter.php. Так вот: надо ли прописывать это название в корневой файл htaccess либо проще было бы сделать еще один экземпляр для каталога 2?
Эта директива прописывается только для каталога в котором расположен .htaccess
Если в конф. файле то для директории Document_root
По моему так...
3) Допустим, я хочу под видом html-файла скрыть php-файл. Этот самы php-файл начинается и заканчивается тэгами <? и ?>, т.е. ни cтрочки "чистого" html там нет.
Пробовал прописать:
RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm
сервер выводит php-код как будто в "Блокноте"
AddHandler application/x-httpd-php .htm
4) Слышал, что из этого файла можно управлять движком PHP. Еще один вопрос: как написать инструкцию, управляющую прарметром magic_quotes? Ведь вполне возможно, что у хостера эта штука отключена...
PHP можно из под Апача управлять если он установлен как модуль Апача. У тебя дома скорее всего как отд. CGI приложение. У хостера скорее всего как модуль. Насчёт magic_quotes можно у хостера узнать или так:
На последний вопрос сам ответь
Пользуй МАНУАЛ
И естественно не htaccess, а .htaccess
И не забывай про директиву AllowOverride
И естественно не htaccess, а .htaccess
Ребята, ну неужели не сказать по-русски? Ну к чему эти все намеки?:o Мол, так и так, сделай то-то и то-то. Я, конечно, понимаю, что все вы занятые люди, что у всех у вас масса проектов и т.п. но услышьте голос вопиющего чайника! Растолкуйте мне, как сделать так, чтобы апач не игнорировал это файл (.htaccess)
Я пишу в своем варианте:
DirectoryIndex main.php
Option -Indexes
а апач не воспринимает этот файл, как будто его вообще нет!
Все это дело происходит на моей машине. Локалхост переименован на host.
Если я снова непонятно написал - извините, по-другому не могу.
Ребята, ну неужели не сказать по-русски?
В файле httpd.conf ищешь секцию Directory c параметром твоего Document_root
(у меня локально это <Directory "k:/vzxk/"> )
Прописываешь её так (измени путь на свой):
<Directory "k:/vzxk/">
Options Indexes FollowSymlinks Includes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Должно работать...
Индексные файлы пропиши здесь:
<IfModule mod_dir.c>
DirectoryIndex index.html index.htm index.php
</IfModule>
Успехов!
Эта директива прописывается только для каталога в котором расположен .htaccess
Если в конф. файле то для директории Document_root
По моему так...
.htaccess- директивы из этого файла работают на все поддиректории, так что надо еще одну копию делать..