Язык
Контакты
GitHub
Поддержка
Регистрация
Войти
Логин: Пароль: Запомнить:
Пользователи
Голосование

    Какую CMS Вы предпочитаете

    AtomX
    Fapos CMS
    Drunya CMS
Последние комментарии
Автор: чайник, в новости:

Что такое API и для чего они нужны

Автор: HIshnik, в новости:

Классы в PHP для чайников

Автор: Аноним, в новости:

Написание простого вируса в блокноте

Автор: stream, в новости:

Создаем BB коды на PHP

Топ пользователей
Drunya
Репутация: 108
Сообщений: 3527
Сашка_из_Шебекино
Репутация: 87
Сообщений: 1803
boriska
Репутация: 65
Сообщений: 846
ARMI
Репутация: 46
Сообщений: 1858
BAH0
Репутация: 26
Сообщений: 544
Главная » Статьи » WEB разработка » Apache и серверное ПО
Файл .htaccess является конфигурационным файлом Apache и позволяет делать очень полезные фишки на вашем сервере или хостинге. К этим задачм можно отнести переадресацию, разграничение прав доступа к файлам и папкам или конфигурирование PHP. Хотя в работе с .htaccess нет ничего сверх сложного это становится камнем предкновения для многих веб мастеров и посему я решил немного написать о нем тут, дабы показать как делаются элементарные вещи при помощи этого файла.


Расмотрим случай когда вам надо перенаправить пользователя на другую страницу
К стати для того чтобы писать редиректы в .htaccess надо включить RewriteEngine модуль и делается это в самом .htaccess
Code:
RewriteEngine On
RewriteRule ^(.*)$ index.php?param=$1 [QSA,L]
этот код перенаправит польззователя с любого адреса вашего сайта на файл index.php с гет параметром param равным всей строке адреса введенной им. Тут все работает по принципу регулярок. Тоесть в параметре $1 будет содержаться все что было заключено в скобки, а в нашем примере в скобки была заключена вся строка ^(.*)$.
^ - Начало строки
$ - Конец строки
.* - Ноль или более любых символов



Но а бывают случаи когда надо перенаправить юзера только в том случае если запрашиваемого им файла нет на сервере. тогда код будет выглядеть так.
Code:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
Он перенаправит юзера только если файла на который идет запрос нет.


Конфигурирование PHP и не только

а вот примеры конфигурирования PHP директив
Code:
php_value register_globals off
php_value session.use_trans_sid 1 
php_value arg_separator.output &
php_value session.cookie_lifetime 0
php_flag magic_quotes_gpc Off
php_value upload_max_filesize 100M
php_value post_max_size 100M

А вот как при помощи .htaccess можно задавать кодировку по умолчанию и такие приколы, как например, файл который откроется по умолчанию при обращении к директории без указания конкретного файла.
Code:
DirectoryIndex index.php
AddDefaultCharset UTF-8

Комметарии в .htaccess
Иногда надо удалить строчку, но потом ее можно и не вспомнить, для таких случаев предусмотрены комментарии
Code:
#DirectoryIndex index.php
AddDefaultCharset UTF-8
например в этом примере, первая строка не сработает, так как символ # говорит о том что эа строка - комментарий



Доступ и права в .htaccess
бывают случаи когда надо закрыть доступ к той или иной странице. Например к папке с исполняемыми файлами юзеру незачем иметь доступ и тут нам поможет такая директива
Code:
Deny From All

А разрешить доступ можно так
Code:
Allow From All
Тут "All" означает всем, но вместо него можно писать IP адреса
Code:
Deny From All
Allow From хх.хх.ххх.ххх

и так далее. Так же можно углубиться в эту науку и сделать авторизацию по паролю и логину, но это я предпочитаю делать программно.
Работа с .htaccess

Теги: Доступ и редирект; .htaccess; серверное по; настройки сайта;
Источник: Drunya
Автор: Drunya
Категория: Apache и серверное ПО
Просмотров: 2316
Комментариев: 0

Сейчас online: 18. Зарегистрированных: 0. Гостей: 18.
-->