Как запретить просмотр содержимого конкретной папки. Для чего используется htaccess
Прежде чем начать вносить какие-либо изменения в файл htaccess необходимо разобраться, что это за файл и для чего он нужен. Если вкратце, то данный файл отвечает за конфигурирование настроек веб-сервера. Другими словами, в нем содержится информация о том, как веб-сервер должен обрабатывать те или иные страницы сайта.
Для чего используется htaccess?
В большинстве случаев файл htaccess используется для создания переадресации или другими словами 301 редиректа с одной страницы сайта на другую. Но это далеко не все возможности данного файла, так же с его помощью можно указать веб-серверу (Apache и подобных серверов) о необходимости сжимать страницы, включать кэширование, управлять доступом к каталогам и многое другое.
Так как для пользователей, которые разместили свои сайты на виртуальном хостинге, нет возможности напрямую конфигурировать веб-сервер (так как это затронет все размещенные на нем сайты), то для конфигурации сервера для каждого сайта в отдельности и был придуман файл htaccess.
Где должен располагаться файл htaccess?
После установки Joomla 3 на локальном компьютере , либо на хостинге в корневой директории сайта уже содержится файл htaccess.txt, но для того чтобы он начал работать его необходимо переименовать. Имя рабочего файла должно начинаться с точки, далее имя «htaccess» и все, расширения «.txt» быть не должно. В результате файл должен иметь имя «.htaccess».
По поводу места его расположения, тут все просто - если файл лежит в корневом каталоге сайта, то его действия распространяются на весь сайт. Но никто не запрещает поместить файл htaccess во вложенные каталоги, тем самым действие файла будет применяться только к ним и вложенным папкам. Так же возможно использование нескольких файлов htaccess в разных папках, к примеру, в корне сайта и во вложенной папке. В этом случае действие основного файла будет распространяться на весь сайт, за исключением того каталога в котором лежит собственный файл конфигурации.
Какие директивы содержит файл htaccess?
Директив может быть множество, в базовом варианте файл htaccess, который уже присутствует в Joomla 3, содержится (если убрать все комментарии) примерно следующий код:
IndexIgnore * #Исключаем файлы из листинга Options +FollowSymlinks #Данная строка предназначена для корректного перенаправления. Options -Indexes #Запрет просмотра директорий в которых нет индексных файлов RewriteEngine On #Включаем механизм перенаправления в модуле mod_rewrite.c ## Настройки безопасности RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%{0,2}) RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%{0,2}) # Если было выполнено одно из описанных выше условий, то сервер вернет 403 ошибку и перенаправит на главную страницу сайта. RewriteRule .* index.php [F] #За это отвечает данная строчка ## Блок посвященный SEF-оптимизации. RewriteRule .* - RewriteCond %{REQUEST_URI} !^/index\.php RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* index.php [L]
На этом рассмотрение базового файла htaccess законченно. Теперь вы знаете что для того чтобы файл начал раздавать указания веб-серверу его для начала необходимо переименовать. Базовый файл htaccess вполне работоспособен и для начала вполне подойдет для работы.
В следующей статье я расскажу о других полезных директивах файла htaccess, которые позволят защитить сайт, включить сжатие и кэширование его страниц, и некоторые другие полезные функции.
Уровень : Новичок - Пользователь
Здравствуйте, уважаемые подписчики. Напомним, что функция SEF, о которой мы рассказываем сегодня, позволяет генерировать ссылки на внутренние страницы сайта в виде статических адресов. А по умолчанию Джумла создает динамические ссылки на внутренние страницы. Чем отличаются динамические адреса от статических и чем статические адреса страниц полезнее для Вашего сайта, читайте в нашей рассылки.
В стандартном дистрибутиве Джумлы функция SEF предусмотрена, но не включается автоматически. Активировать ее можно достаточно просто и быстро. Распишем процесс по шагам.
Шаг 1. Включаем опцию SEF в админке Джумлы
Выбираем пункт меню Главная > Глобальная конфигурация и открываем вкладку SEO . Далее для параметра Дружественные для поисковых систем URL-ы устанавливаем значение Да . Джумла при этом Вас предупредит: "Необходимо переименовать htaccess.txt в.htaccess". Закрываем окно с предупреждением и идем дальше.
Шаг 2. Необязательный. Для случая, если адрес главной страницы Вашего сайта содержит дополнительный путь
Поясняем. Если на Вашем сайте для загрузки главной страницы достаточно ввести в браузере www.mysite.ru
, то Вам этот шаг делать НЕ НАДО!
А кому надо? Пример рядом. Для доступа к сайту нашей рассылки, чтобы попасть в Джумлу, необходимо набирать адрес www.сайт/joom/
Что дополнительно необходимо сделать для таких сайтов? Установить в файле htaccess.txt
параметр RewriteBase
с правильным значением. Обычно параметр RewriteBase выглядит так:
RewriteBase /
или может быть закомментирован:
# RewriteBase /
Необходимо параметр раскомментировать и записать так:
RewriteBase /<имя_папки_джумлы>/
Для сайта сайт изменение будет выглядеть так:
RewriteBase /joom/
Внимание! Для изменения файла htaccess.txt
у него должны быть unix-права, разрешающие это сделать. В целях безопасности этот файл должен иметь права "444". Но в этом случае Вам его не изменить. Для изменения необходимы права "644". Установите их, а после изменения ОБЯЗАТЕЛЬНО верните прежние права!
Еще момент. Файл htaccess.txt
может быть в кодировке KOI8
, поэтому в Блокноте с ним не поработаешь, необходим любой другой редактор, воспринимающий эту кодировку.
Шаг 3. Переименовываем файл htaccess.txt
Файл htaccess.txt находится в корневой папке Джумлы. Переименовать его можно 2 способами. Если в Вашем дистрибутиве есть компонент Joomla Xplorer , можно переименовать файл, используя его. Другой способ - универсальный. Заходим на хостинг по ftp и делаем, что требуется. Переименовываем файл htaccess.txt в .htaccess
Технические моменты
Прежде, чем включать SEF, нужно учитывать следующие моменты:
- Если Вы используете Unix хостинг и, соответственно веб-сервер apache, то в его конфигурации должен быть включен модуль mod_rewrite
. На нормальном хостинге он обычно включен.
При использовании Windows хостинга, что является большой редкостью, необходимо уточнить о наличии аналога mod_rewrite. - Для Unix хостинга дополнительно должно быть разрешено перекрытие конфигурации веб-сервера apache в пользовательских файлах конфигурации .htaccess Это тоже обычно уже установлено
Примечания:
1. Технические моменты уточняйте у техподдержки хостинга.
2. Функцию SEF также просто отключить как и включить, проделав перечисленные шаги в обратном порядке. Поэтому уточнять технические моменты перед включением SEF необязательно. Если после включения SEF адреса страниц будут генерироваться прежним образом или к внутренним страницам сайта прекратится доступ, будет выдаваться окно "Страница не найдена", просто верните все в прежнее состояние и работа сайта восстановится!
Лирическое отступление:)
В качестве его позвольте предложить Вам познакомиться с новостным ресурсом Отдых круглый год! , созданным командой "efft" Lab. Это новости с самых популярных туристических направлений наступающего сезона:
Вы знаете, сколько процентов населения нашей страны отдыхают за рубежом? 10 - 20 - 30? Нет! А сколько? .
© www.. Все права защищены
При воспроизведении материалов статьи указание имени автора
и активная ссылка на сайт ОБЯЗАТЕЛЬНЫ!
Файл.htaccess (англ. hypertext access) используется для простой и удобной настройки веб-сервера на котором хранится сайт пользователя. Соответственно меняя настройку веб-сервера, мы сможем поменять работу сайта. Как правило, файл.htaccess находится в корневом каталоге, а его действие распространяется на весь сайт и на все подкаталоги. Если же в другом каталоге содержится свой.htaccess, то он будет действовать только на свой каталог и подкаталоги.
Важно! Изменяя файл.htaccess можно очень нарушить работу сайта, а также необдуманные действия с ним могут не иметь видимых последствий, но повлечь за собой снижение позиций в поисковых системах, либо полную их потерю. Поэтому мы рекомендуем перед любыми изменениями файла сохранять его копию, чтобы иметь возможность вернуть прежние настройки.
Где находиться файл.htaccess?
Обычно он располагается в коневом каталоге сайта. Иногда, в различных CMS может находится файл htaccess.txt, который никак не воспринимается сервером и ни на что не влияет. Чтобы он начал работать нужно его переименовать в.htaccess. Если это не получится сделать на вашем компьютере, то зайдите на свой сервер через FTP-клиент, и переименуйте файл прямо сервере.
Редактировать файл на компьютере можно с помощью любого текстового редактора, но чтобы избежать возможных проблем с кодировкой мы рекомендуем использовать для этого Notepad++ .
Как проверить работает ли.htaccess?
Все просто, напишите в первой строчке этого файла любое слово (например YAROBOT), сохраните файл и замените им находящийся на сервере. Если сайт продолжит работать, то.htaccess в данный момент не работает. Если же появится ошибка 500 Internal Server Error, то это значит, что веб-сервер не смог понять команду (YAROBOT) и выдал ошибку. Этот факт подтвердит, что работа.htaccess на сервере поддерживается и включена в данный момент. Чтобы вернуть сайту работоспособность удалите строчку с YAROBOT.
Правильный 301 редирект через файл.htaccess
Важно! Если вы хотите, чтобы ваш редирект работал, нужно перед строками, которые рекомендуются ниже по тексту, обязательно прописать
301 Редирект с одной страницы на другую (или сайт)
Для этого в файл.htaccess вносим следующие строки:
Redirect 301 /старая-страница.html http://сайт.рф/новая-страница.htmlRedirectPermanent /старая-страница.html http://сайт.рф/новая-страница.html
301 Редирект с www-сайта на сайт без www
Например перенаправление с http://www.site.com на http://site.com. Это очень полезная вещь, часто используется в СЕО
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.domain\.com$
RewriteRule ^(.*)$ http://domain.com/$1
Обратный редирект с домена без www на домен с www
Перенаправление с http://site.com на http://www.site.com (не советуем использовать)
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$
RewriteRule ^(.*)$ http://www.domain.com/$1
Редирект всех посетителей со старого сайта на новый
Redirect 301 / http://newsite.com/
Как добавить.html в конце URL?
Чтобы при вводе site.com/page или site.com/page/ происходило перенаправление на site.com/page.html пишем в.htaccess следующее:
RewriteCond %{REQUEST_URI} (.*/[^/.]+)($|\?)
RewriteRule .* %1.html
RewriteRule ^(.*)/$ /$1.html
Как убрать.html в конце URL?
Обратный редирект с site.com/page.html на site.com/page
RewriteBase /
RewriteRule (.*)\.html$ $1
Как убрать слэш в конце URL?
Например было site.com/page/, стало site.com/page
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1
301 Редирект с одного раздела на другой?
Перенаправление всех страниц одного раздела site.com/razdel-1/razdel-2/page на на страницы другого раздела site.com/razdel-1/page
RewriteRule ^blog/raznoe/(.*)$ http://site.ru/blog/$1
301 Редирект при переезде со старого домена на новый
Следующее правило корректно перенаправит посетителей с каждой конкретной страницы старого сайта на такую же страницу на новом сайте. Например со страницы oldsite.com/page на newsite.com/page
RewriteCond %{HTTP_HOST} ^www.oldsite.com$
RewriteCond %{HTTP_HOST} ^test.oldsite.com$
RewriteRule ^(.*)$ http://newsite.com/$1
Правильное изменение страниц ошибок через.htaccess
Когда пользователь хочет увидеть сайт (отправляет запрос на сервер хостера), то сервер возвращает ему ответ с кодом. Коды 1-399 свидетельствуют о нормальной работе сервера, а коды 400-599 сообщают об ошибке сервера (коды всех ошибок смотрите в спец. статье). Например, если сервер с вашим сайтом перегружен, или у него происходит перезагрузка, то пользователь увидит непонятный ему текст (например, 500 Internal Server Error), подумает, что сайт больше не будет работать и больше никогда на него не вернется. Чтобы вместо стандартной страницы ошибки (непонятно для пользователя) показать ему вашу отдельную страницу, на которой будет например, сообщение о том, что сайт временно не работает, но позже восстановит свою работу и на него обязательно стоит вернуться (сайт КиноПоиск при перегрузки серверов выдает сообщение "Матрица перезагружается..." и соответствующую картинку). Наиболее распространенным решением является составление собственной страницы вместо стандартной 404-ошибки. Эта ошибка показывается пользователю, если введен адрес несуществующей страницы. Думающие вебмастеры, создают свою страницу вместо непонятной стандартной, на которой пишут, что человек перешел по несуществующей ссылке и предлагают поискать нужную информацию на сайте, а не уйти с него. Пример нашей 404-страницы можно увидеть . Чтобы показывать пользователям свою страницу ошибки вместо стандартной, нужно создать отдельную страницу (например http://yoursite.com/404.html) и добавить соответствующий код в файл.htaccess Вот примеры кода, который нужно добавить:
ErrorDocument 400 http://yoursite.com/400.html
ErrorDocument 404 http://yoursite.com/404.html
ErrorDocument 500 http://yoursite.com/500.html
Если вы хотите подставить другую страницу вместо ошибки 403, то нужно указывать еще текстовое сообщение, которое будет показано, например:
ErrorDocument 403 "Sorry can"t allow you access today, see you later alligator:)"
Настройки безопасности сайта через файл.htaccess
Файл.htaccess дает большие возможности для улучшения безопасности сайта. Наиболее популярные мы сейчас перечислим:
Защита сайта от скриптовых инъекций
#Включает отслеживание сим-ссылок
Options +FollowSymLinks
#Запускает url_rewriting
RewriteEngine On
#Блокирует все ссылки, содержащие <script>
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E)
#Блокирует все скрипты, которые пытаются изменить переменные PHP Globals:
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%{0,2})
#Блокирует все скрипты, которые пытаются изменить переменную _REQUEST:
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%{0,2})
#Перенаправляет все подобные попытки на страницу с ошибкой 403 - запрещено
RewriteRule ^(.*)$ index.php
Как защитить сайт от кражи картинок
Часто вебмастеры-умельцы узнают путь к картинке на вашем сайте и вставляют его в код своей странички. В итоге основная страничка загружается с его сервера, а картинка - с вашего. Это позволяет ему экономить свой трафик, и использовать ваш.
Options +FollowSymlinks
#Запрещает кражу картинок
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?yoursite.com/
RewriteRule .*.(gif|jpg|png)$ http://yoursite.com/images/stop_stealing.gif
yoursite.com - адрес вашего сайта
http://yoursite.com/images/stop_stealing.gif - путь к картинке, которую вы сами должны создать. На ней обычно пишут "не крадите картинки с чужих сайтов" или что-то подобное.
Как заблокировать доступ к сайту для пользователя по IP?
Применяется против спамеров и прочих неадекватов, изредка для предотвращения хакерских атак.
#Вносим сюда нежелательные IP адреса
allow from all
deny from 164.186.15.116
deny from 124.153.34.144
Как заблокировать доступ к сайту для всех IP кроме проверенных?
Чтобы заблокировать доступ для всех, кроме конкретных IP-адресов, добавляем такой код:
#Запрещает доступ для всех, кроме указанных IP-адресов
ErrorDocument 403 http://www.yoursite.com
Order deny,allow
Deny from all
Allow from 164.186.15.116
Allow from 124.153.34.144
Как запретить просмотр содержимого конкретной папки
#Запрещает просмотр содержимого папки
Options All -Indexes
Запрет доступа к конкретному файлу
#Защищает файл myfile.txt
order allow,deny
deny from all
Запрет доступа ко всем файлам с конкретным расширением
Например чтобы запретить доступ ко всем файлам.txt пишем так:
Order Deny,Allow
Deny from all
Блокируем ненужных User Agent-ов
Часто у пользователя в браузере установлено очень много расширений, которые передают серверу (на котором расположен ваш сайт) информацию о себе и другую лишнюю информацию. Такую же информацию посылают на сервер клиентские приложения установленные на компьютере пользователя, а также различные роботы и пауки. Информацию о большинстве актуальных на сегодня "Юзер Агентах" можно найти .
#Блокирует нижеперечисленных User Agent-ов
SetEnvIfNoCase user-Agent ^FrontPage
SetEnvIfNoCase user-Agent ^Java.*
SetEnvIfNoCase user-Agent ^Microsoft.URL
SetEnvIfNoCase user-Agent ^MSFrontPage
SetEnvIfNoCase user-Agent ^Offline.Explorer
SetEnvIfNoCase user-Agent ^ebandit
SetEnvIfNoCase user-Agent ^Zeus
Order Allow,Deny
Allow from all
Deny from env=bad_bot
Изменение кодировки сайта через.htaccess
Бывает такое, что один пользователь заходит к вам на сайт и видит его нормальным, а другой видит абракадбру вместо букв. Это происходит из-за кодировки сайта. Чтобы браузер пользователя правильно ее распознал, сайт делается в одной из популярных кодировок:
UTF-8 - универсальная двухбайтовая кодировка
Windows-1251 - Кириллица (Windows)
KOI8-r - Кириллица (КОИ8-Р)
cp866 - Кириллица (DOS)
Windows-1250 - Центральная Европа (Windows)
Windows-1252 - Западная Европа (Windows)
Также кодировку нужно указывать в мета-теге каждой страницы сайта, это сообщает браузеру в какой кодировке сделан сайт.
Если данный мета-тег не указан, то можно сообщить браузеру, какая у вас кодировка, с помощью файла.htaccess:
AddDefaultCharset WINDOWS-1251
Если работают оба варианта (и мета-тег, и файл.htaccess), то очень важно, чтобы кодировка в них совпадала.
Также есть возможность, чтобы сервер автоматически перекодировал все файлы, которые на него загружаются:
Чтобы выключить перекодировку сервера нужно вписать:
Оптимизация работы сайта через.htaccess
Ускорение работы сайта через Gzip
Включение данной функции позволяет серверу сжать информацию, перед тем, как он отправит ее пользователю. В итоге скорость работы сайта возрастет, но это немного увеличит нагрузку на сервер (на котором хранится ваш сайт), т.к. ему придется выполнять операцию сжатия налету. Чтобы включить Gzip-сжатие в файл.htaccess нужно добавить следующие строки (попробуйте поочередно добавить 3 варианта кода, проверяя скорость , и оставьте тот вариант, который дает наибольшее ускорение):
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0 no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
mod_gzip_on Yes
mod_gzip_item_include file \.js$
mod_gzip_item_include file \.css$
FileETag MTime Size
ExpiresActive on
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
Как улучшить кэширование сайта на сервере?
Улучшенное кэширование позволяет не загружать второй раз данные (картинки, основные элементы дизайна и т.д.), которые уже были загружены пользователем в момент первого просмотра сайта. Таким образом для конкретно взятого пользователя, вторая и последующие просмотренные страницы загрузятся гораздо быстрее, а нагрузка на ваш сервер существенно снизится. Улучшить кэширование сайта можно с помощью следующего кода (пробуйте по очереди два варианта, и оставляйте наиболее быстрый, скорость проверяем ):
ExpiresActive On
ExpiresByType application/javascript "access plus 7 days"
ExpiresByType text/javascript "access plus 7 days"
ExpiresByType text/css "access plus 7 days"
ExpiresByType image/gif "access plus 7 days"
ExpiresByType image/jpeg "access plus 7 days"
ExpiresByType image/png "access plus 7 days"
FileETag MTime Size
ExpiresActive on
ExpiresDefault "access plus 1 month"
В выражении "access plus ..." установите срок хранения файлов на компьютере пользователя. По истечении этого срока, при запросе к сайту файлы будут единоразово загружены с сервера. Оптимальным будет от 7 дней до месяца, хотя иногда устанавливается и год.
Изменение главной (индексной) страницы сайта
Как правило при заходе на сайт сначала загружается страница index.html или index.php. Чтобы изменить это правило (в начале станет загружаться mypage.php) добавляем в.htaccess такой код:
Настройка PHP-параметров через файл.htaccess
Обычно за настройки PHP отвечает файл php.ini, но часть этих настроек можно задать через.htaccess. Для этого используются два выражения: php_value - для логических значений (например включить\выключить), и php_flag для числовых значений. Вот правила написания этих выражений:
php_flag директива1 ЗНАЧЕНИЕ1
php_value директива2 ЗНАЧЕНИЕ2
где ЗНАЧЕНИЕ1 может быть on, off, 1 или 0 (1 и on - означает включить, а 0 и off - выключить);
ЗНАЧЕНИЕ2 - любое числовое или буквенное значение, которое подходит под конкретную директиву;
директива1 (используется только с php_flag) может иметь значения:
magic_quotes_gpc - вкл\выкл функцию magic_quotes_gpc
display_startup_errors
- вкл\выкл показ ошибок, которые происходят при работе PHP
php_flag display_startup_errors 1
display_errors
- вкл\выкл показ ошибки в браузер
output_buffering
- вкл\выкл буферизацию вывода данных
register_globals
- вкл\выкл глобальные переменные
engine
- вкл\выкл исполнение PHP в папке в которой находится.htaccess и во всех вложенных
директива2 (используется только с php_value) может иметь такие значения:
upload_max_filesize
- устанавливает максимальный размер загружаемого файла
php_value upload_max_filesize 10M
user_agent
- задает значение строки user_agent, которую передает сервер
php_value user_agent “Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)”
post_max_size
- задает максимальный размер пересылаемой почты
mysql.default_user
- задает имя пользователя базы данных
php_value mysql.default_user databaseuser
mysql.default_password
- задает пароль для пользователя БД
php_value mysql.default_password jk323jh4g
mysql.default_host
- задает имя хоста БД (обычно это localhost)
php_value mysql.default_host localhost
sendmail_from
- задает имейл для отправки почты с помощью PHP
auto_prepend_file
- задает файл, который будет добавлен в начало каждого PHP-скрипта
php_value auto_prepend_file /www/publiс_html/myfile.php
auto_append_file
- задает файл, который будет добавлен в конец каждого PHP-скрипта
php_value auto_append_file /www/publiс_html/myfile.phpВ корне каждого сайта существует файл с названием «.htaccess». Начинающие вебмастера не придают ему значения. Признаюсь честно, я тоже первые полтора года не понимал, зачем он нужен. Лежал себе файл htaccess.txt в папке и бездельничал. А потом, когда стал углубляться в продвижение сайтов, понял, что без некого никуда. И мне пришлось переименовать файл htaccess.txt в.htaccess, тем самым активировав его (в первом варианте он не работает). А затем я стал разбираться в командах. Как оказалось, существует много полезных команд, которые могут облегчить жизнь вебмастеру. Некоторыми из них я сейчас с Вами поделюсь.
Углубиться в познания файла.htaccess меня вынудило вчерашнее знакомство с Joomla 3.0 , в которой появлялись слэши сами собой.
301 редирект/Redirect 301:
Начну, пожалуй, с самой полезной команды для seoшников - 301 редирект. Лично я использую данную команду на каждом своем и клиентском сайте, как минимум, чтобы склеить домен с WWW и без него, а так же, чтобы скрыть реферальные ссылки.
Делается это так:
Redirect 301 /referal http://www.site.com/category/page/1
Ошибка 404:
Практически каждая CMS имеет свою страницу с 404 ошибкой. На проще всего, на мой взгляд, создать ее самому и прописать ее в htaccess.
ErrorDocument 404 / 404.html
Скрываем папки и файлы:
Чтобы обезопасить ваш сайт, можно скрыть определенные директории и файлы.
Options All -Indexes
Защищаемся от хотлинкинга:
Если на вашем сайте очень много полезных и уникальных материалов, к тому же они часто обновляются, то рано или поздно их начнут копировать. А «воришки» ленятся даже переносить изображения на свой сайт. Поэтому, когда на их сайте будет загружаться изображение, то оно будет подгружаться с вашего сервера. Это и называется хотлинкингом. Дабы защитить свой сайт от него, стоит внести изменения в htaccess.
RewriteBase /
RewriteCond% {HTTP_REFERER} ^ $!
RewriteCond% {HTTP_REFERER} ^ http:// (www.) yoursite.com / * $ !?.
RewriteRule (GIF | JPG | SWF | FLV | PNG). $ / подача /
Меняем страницу по умолчанию:
Многие хостинги позволяют в панели администратора указывать страницу по умолчанию (например, вместо главной - страницу категории товаров), а некоторые нет. Поэтому проще всего указать нужную страницу в одном файле. Например, страницу о «баннерной рекламе в интернете ». При переезде на любой другой хостинг, страница по умолчанию не изменится.
DirectoryIndex about.html
Ставим редирект с домена на домен:
Ни для кого не секрет, что сайты рано или поздно приходится закрывать. Причины могут быть разные. Чтобы не потерять трафик с поисковых систем, можно установить редирект со старого домена на новый. Обычный 301 редирект тут не подойдет.
# redirect from old domain to new domain
RewriteEngine On
RewriteRule ^(.*)$ http://www.yourdomain.com/
Устанавливаем лимит загрузки файлов:
Если ваш у Вас имеется популярный форум или сайт, на который пользователи постоянно загружают фото, видео и другие файлы, то Вы скорее всего уже сталкивались с нехваткой диского пространства на сервере. Чтобы этот момент отложить на более поздний срок, рекомендую указывать максимальный размер для загружаемых файлов следующими командами:
php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_execution_time 200
php_value max_input_time 200
Сжимаем файлы:
Конечно, можно включить GZIP-сжатие файлов в вашей CMS, например, Joomla позволяет это сделать. Но если ваша CMS не способна на такое, то сжатие файлов Вы можете включить следующими командами в файле htaccess:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
Включаем кеширование файлов:
Header set Cache-Control “max-age=2592000″
Устанавливаем Email администратора сайта:
ServerSignature EMail
SetEnv SERVER_ADMIN
Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
Так же для Вас может оказаться полезной моя статья «Как склеить домен правильно ».
Оставь комментарий, нажми «Мне нравится » («Like ») и «Сохранить », а я напишу для тебя еще что-нибудь интересное:)