Анализ сайта: Проверка Траста

Что такое .htaccess?

Файл .htaccess зачем он нужен?

Получается так, что один из самых популярных файлов, которые можно найти на каждом сервере хостинга, по-прежнему остается самым непонятым, особенно большинством новичков в работе с хостингом или администраторов сайтов.

Файл под названием «.htaccess» используется для указания любого числа важных настроек, от страницы ошибки 404, которая отображается посетителям сайта, до паролей, установленных на конкретные файлы и папки на самом сервере. Несмотря на обширный функционал и юзабилити, и некоторых настроек, выставить которые можно только лишь посредством файла .htaccess, огромное число людей просто не понимают, как работать с этим файлом, и для чего он предназначен. Им никогда не приходилось учиться работать с ним, либо они всегда не до конца понимали важность научиться использоваться такой спектр настроек безопасности и доступа к директориям, с чем и связан файл .htaccess.

Администраторы сайтов, которые находятся в поисках возможности более вплотную подойти к вопросу о безопасности собственного сайта: хотят управлять доступом к файлам, директориям, руководить паролями, страницами ошибок, а также влиять на оптимизацию сайта под поисковые системы, для своего арсенала вряд ли смогут найти инструмент лучше файла .htaccess. В сегодняшней статье я попытаюсь объяснить вам «как» и «почему» о файле .htaccess, и тогда предназначение этого файла станет более понятным.

Что такое файл .htaccess?

Говоря в общем, файл .htaccess – это серверный документ, который используется для настройки уровня доступа к файлам и папкам, правил переписи URL или сообщений об ошибке. Наиболее часто этот файл ассоциируют с отображением страницы ошибки 404 (когда пользователь пытается перейти на страницу сайта, которой не существует). Кроме этого, файл .htaccess часто используется для оптимизации сайта под поисковые системы. Применение редиректа 301 укажет поисковым системам путь до нового расположения контента или URL – это, в принципе, и есть главная ответственность на плечах этого файла.

Файл .htaccess также тесно связан с современной структурой постоянных ссылок, которые применяются в CMS вроде WordPress. Еще до того, как редиректы URL обрела широкую известность, страницы и записи располагались по адресу вроде http://web-profy.com/blog?p=1355

Но когда для переписи URL применяют файл .htaccess, он использует данные вроде даты, времени, категории, меток и другую информацию для генерирования читабельных ссылок с использованием слов (а не цифр), которые и представляют собой URL.

  • Таким образом мы получили ссылки в формате http://web-profy.com/chto-takoe-htaccess.htm

Поисковые системы на самом деле гораздо лучше реагирует именно на второй формат URL, и именно поэтому они так стремительно набрали свою популярность. И именно поэтому перепись URL стало практически основной функцией файла .htaccess, даже среди тех владельцев вебсайтов или администраторов CMS, которые даже не знают ничего об этом файле. Большинство систем управления контентом позволяют нам создавать и редактировать .htaccess, что сокращает долю участия администраторов.

Файл .htaccess наиболее тесно связан с хостингами, базирующихся на Apache. Они распространены в случаях с Apache версий 1.х и 2.х, и выполняет практически же функции и имеет тот же язык программирования.

Есть ли у меня файл .htaccess и могу ли я создать его?

Первое, что многие люди замечают относительно .htaccess, это пустота вместо названия файла и расширение в виде слова, когда все привыкли видеть название файле в виде слова и расширение в виде пары букв. Это сделано специально, так как файлы и папки, названия которых начинаются с пустоты, расцениваются как «скрытые» операционными системами с открытым исходным кодом. Это означает, что файл .htaccess нельзя увидеть обычным пользователям и соответственно его нельзя будет отредактировать или испортить.

Этот уникальный способ называния файла имеет побочный эффект – он иногда вызывает сомнения у пользователей. Так как он должен быть скрытым, его редко можно увидеть в традиционных FTP-клиентах на Mac или Windows. Это приводит к тому, что многие новички думают, что у них просто нет .htaccess-файла, и они пытаются создать новый файл, чтобы выставить собственные настройки, коды ошибок и права на директории. Во многих случаях, тем не менее,-хостинги предоставляют пространство на диске с уже установленным там файлом .htaccess по умолчанию.

 

Это можно узнать, просто авторизовавшись в Plesk Panel или cPanel, где можно будет найти файл .htaccess посредством веб-интерфейса файлового браузера. Этот файловый браузер предназначен для того, чтобы можно было видеть скрытые директории и файлы, и он покажет вам .htaccess-файл в директории public_html, так как даже обычные веб-браузеры и FTP-клиенты зачастую скрывают его. Посредством этого веб-интерфейса и встроенного в него текстового редактора мы можем отредактировать его и сохранить, и он автоматически будет загружен на сервер.

В некоторых случаях, хостинги могут не позволить своим клиентам создавать и редактировать файл .htaccess. Такая проблема часто встречается в дешевых хостинг-тарифах, где всегда больше ограничений. Часто они позволяют использовать файл .htaccess в чуть более дорогих тарифах, чтобы стимулировать клиентов приобретать более дорогие планы. Если у вас возникла такая проблема, попробуйте вышеприведенный метод с веб-интерфейсом файлового менеджера, постарайтесь найти файл .htaccess в директории public_html. Если его нет, попробуйте создать его и загрузить на сервер. Сообщение об ошибке от сервера может указывать на то, что у пользователей нет возможности создавать этот файл. Если же такого сообщения не будет, то это означает, что хостер просто не предоставил этот файл по умолчанию, но также означает, что вы можете создать его самостоятельно. Кстати, можете почитать статью про создание htaccess для WordPress, если используйте этот движок.

 Примеры использования файла .htaccess?

Файл .htaccess лучше всего использовать для оперирования ошибок на сайте (вроде 404 или 301), для переписи URL или для того, чтобы выставить права на пользование директорией. Это отлично подходит, когда нужно указать новое расположение старого контента, при создании страницы ошибки для контента, которого больше не существует, для того, чтобы запросить пароль доступа к некоторым файлам или папкам на сервере, либо для того, чтобы превратить URL в более понятные и простые. Давайте рассмотрим некоторые варианты применения файла .htaccess:

1. Перенаправление старых ссылок на новые страницы с помощью редиректа 301

Одна из серьезнейших проблем, с которой сталкиваются владельцы при переезде сайта, это значительные потери в позициях страницы в поисковых системах. Это вызвано тем, что старый контент переносится неверным образом на новое место, а поисковая система не оповещается о том, что имела место перемена места. Вместо этого, поисковые системы сталкиваются с ошибкой 404, что означает примерно то же, что этот контент бесследно исчез навсегда. Это приведет к исключению ссылки из результатов выдачи поисковой системы, и соответственно повлияет на рейтинг вебсайта в этой системе.

Чтобы избежать этого, профессионалы-оптимизаторы рекомендуют использовать страницу редирект 301 как часть файла .htaccess. Эта ошибка известна в качестве постоянного перенаправления, и укажет поисковой системе на новое расположение файла или конкретного контента. Вдобавок, она сообщить поисковой систем о том, что контент был перемещен на постоянной основе, и не будет возвращен на старое место расположения. Это позволит роботу поисковой системы обновить ссылку в выдаче результатов, а не исключить контент из системы. Следовательно, сайт не утеряет свои позиции. Обычное перенаправление выглядит следующим образом:

Redirect 301 http://domen.ru/old-page/ http://domen.ru/archive/new-page/

Вышеприведенный код должен быть вполне понятен. Но давайте все разъясним тем, кто ничего не понял. Первая часть кода, Redirect 301, указывает на тип ошибки и означает, что должно произойти перенаправление в тот момент, когда робот поисковой системы пытается обнаружить контент по старой ссылке. Первый URL-адрес показывает старую ссылку на контент, а второй URL ведет на уже обновленное место расположения контента. Хотя этот пример использует один и тот же домен для обоих URL,  редирект 301 позволяет вам перенаправлять пользователей и поисковые системы на новые доменные имена.

2. Защита файлов и директорий с помощью .htaccess и .htpasswd

Любой пользователь, который когда-нибудь сталкивался с файлом или папкой, для доступа к которым требовался пароль, в принципе, наблюдал .htaccess и .htpasswd в действии. Эти два файла работают рука об руку, запрашивая у вас логин и пароль для доступа к файлу. Если же эти данные не будут предоставлены, то доступ будет запрещен. Это идеальный способ защитить чувствительные файлы, разделы администраторов и страницы авторизации от хакеров и других пользователей со злым умыслов против вашего сайта.

Первый этап в этом процессе заключается в создании файла .htpasswd и загрузки его в папку, где размещены защищенные файлы. Если файл должен защищать конкретную папку, то файл .htpasswd должен быть размещен внутри защищаемой папки. Контент файла на самом деле просто создать, так как он содержит имя пользователя и пароль, разделенные двоеточием. Давайте взглянем на пример:

ValidUser: neprostoyparol

Эта строка текста должна быть в файле .htpasswd, и этот файл нужно сразу же загрузить на сервер. Если вы хотите добавить еще пользователей и паролей, у которых будет доступ к файлу или директории, то их можно указать в новой строке документа .htpasswd.

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

AuthUserFile /server/path/of/.htpasswd
AuthType Basic
AuthName "Заголовок защищенной страницы"

<Files "login.php">
Require ValidUser
</Files>

Вышеприведенный код довольно прост и понятен, также как и все данные доступа и ошибок в файле .htaccess. Все что нужно сделать, это добавить указание на соответствующий файл .htpasswrd, указать файл или папку, которую нужно защитить, а затем задать странице заголовок. Этот заголовок будет появляться внутри формы авторизации, которая автоматически генерируется браузером.

3. Вывод страницы ошибки 404 для отсутствующих страниц и папок

Сайты, как и технологии, на которых они располагаются, постоянно развиваются. Иногда случается так, что целые сайты или директорию становятся бесхозными, невостребованными, так как контент теряет свою актуальность, и иногда не хочется более представлять его публике. Независимо от причины, по которой в структуре сайта происходят изменения, все нужно корректно указать в файле .htaccess, и оформить это страницей ошибки. Это позволит вашим пользователям быть в курсе того. Что они просматривают устаревший файл, и предупредит их последующие посещения. Роботам поисковых систем эта страница будет сообщать о страницах и папках, которые больше не нужно индексировать.

Для того чтобы указать страницу ошибки 404 для пользователей и поисковых роботов, просто поместите следующую строку в документ .htaccess:

ErrorDocument 404 /path/to/the/404-error-page.htm

Просто укажите путь до страницы ошибки 404 на сервере и сохраните файл .htaccess на сервере. Это все, что требуется. В следующий раз все битые ссылки будут выдавать пользователям интуитивно понятные страницы с информацией об ошибке.

Важная часть дизайна сайта и работы

Файл .htaccess представляет собой важный этап в процессе создания дружественных URL, оптимизации сайта под поисковые системы, а также если вам придется оповещать пользователей и поисковые системы о наличии устаревших ссылок. Это поможет вам если не повысить, то хотя бы сохранить позиции сайта в поисковых системах, сохранить ваши доходы и именно поэтому так важно изучить этот файл и научиться его использовать.

13
Ноя

Вверх