Главная » Создание сайта, раскрутка сайта

Гибкая настройка сервера c помощью файла .htaccess

Допустим у вас есть сайт, теперь надо разместить его в интернете. Допустим вы покупаете виртуальный хостинг на безе сервера Apache, разумеется никто не пустит вас в серверный httpd.conf (главный конфигурационный файл сервера Apache), т.к. изменения в нем отразятся на всех хостящихся. Поэтому заранее поинтересуйтесь у хостера включена ли возможность гибкой настройки сервера, т.е. создания настроек распространяющихся только на ваш сайт. Для гибкой настройки создается файл .htaccess.

  • После создания можете кинуть файл в любой свой каталог на сервере,
  • Вы можете создать столько угодно таких конфигурационных файлов.
  • Правила указанные в .htaccess распространяются на тот каталог в котором он находится и на все подкаталоги, если в них в свою очередь не лежат свои .htaccess
  • Все пути в .htaccess указываются от корня сервера.
  • Синтаксис и правила файлов .htaccess идентичны синтасису и правилам httpd.conf

Пример файла .htaccess и несколько часто употребляемых правил:

# это комментарий
# данный скрипт
# 1) запрещает листинг (просмотр содержимого каталога в отсутствии indexных файлов)
# 2) заставляет сервер принимать ваши .php .php5 .htm .html файлы за файлы php
Options -Indexes
RemoveHandler .html .htm
AddType application/x-httpd-php .php5 .php .htm .html

Еще несколько правил:

# запрет доступа к сайту
Deny from all

# разрешение доступа к сайту только с указанного <a href="http://about-windows.ru/nastrojka-windows/set-i-internet/chto-takoe-ip-adres/" target="_blank">ip-адреса</a>
Allow from 115.89.112.100

# указание серверу обращаться к вашей собственной странице, в случае ошибки 404
ErrorDocument 404 http://your.site//your_page_404.html

# указание серверу принимать за индексные файлы: index.html index.php cia.boo
DirectoryIndex index.html index.php cia.boo

# перенаправление c “somedir/some.file” на “http://www.site.ru/index.html”
Redirect somedir/some.file http://www.site.ru/index.html

Если вы установили свой собственный сервер и желаете использовать возможности гибкой настройки, убедитесь, что в httpd.conf в разделе <Directory “/”> … </Directory> указаны следующие директивы и параметры:

<Directory "/">
Options Indexes FollowSymLinks MultiViews Includes
AllowOverride All
Order allow,deny
Allow from all
</Directory>

PS: вместо точного указания адресов можно использовать регулярные выражения (Redirect заменяется на RedirectMatch).

PPS: в ОС Windows напрямую создать .htaccess файл не поучится, воспользуйтесь Блокнотом – “Сохранить как…”

Добавить комментарий

Ваш комментарий появится после модерации.