Основы .htaccess

Статья написана:
  • Хостинг-гиды
  • Обновлено: Jun 29, 2013

Понимание файла .htaccess сервера является ключевым компонентом веб-дизайна и разработки

Большинство любительских хостинговых клиентов и новых веб-разработчиков считают, что наиболее важной частью любой установки сервера является установленное программное обеспечение. Они лихорадочно устанавливают свое приложение на базе ASP или PHP, в надежде создать продвинутый контент, который контролируется популярным программным обеспечением и обширными ячейками и таблицами базы данных. Но, несмотря на этот шквал активности, почти каждый разработчик сначала игнорирует один из самых важных и мощных файлов на самом сервере. Этот файл известен как файл «.htaccess», и он контролирует все формы сообщений об ошибках на защищенные паролем страницы, структуру постоянной ссылки для заблокированных пользователей, которые не могут видеть содержимое сайта.

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

Защита паролем каталогов - это привязка с файлом .htaccess

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

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

Аутентификация /
AuthGroupFile / dev / null
AuthName EnterPassword
AuthType Basic
требуется пользователь secureUser

Эти строки кода соединены с новым файлом с именем «.htpasswd». Этот файл находится в защищаемом каталоге и содержит имя пользователя и пароль, которые предоставят пользователям доступ к защищенной информации. В приведенном выше примере было указано, что только пользователю «secureUser» может быть предоставлен доступ к каталогу, и они должны ввести требуемый пароль в соответствии с линией кода «AuthName EnterPassword», которая находится чуть выше пользователя определение.

В файле .htpasswd, который будет создан в защищенном каталоге, пользователям нужно добавить только одну строку кода. Формат прост; каждая комбинация пользователей и паролей разделяется с использованием двоеточий. Это означает, что они просто добавят в файл «user: password». В этом случае в качестве примера будет использоваться «secureUser: secureirectorypassword1». Это определит все возможные коды доступа и имена пользователей. Администраторы сайта могут, конечно, включать в этот список несколько пользователей и пароли, если удалить «require user secureUser» различие из файла «.htpasswd». В качестве альтернативы, они могут определять несколько паролей для одного и того же имени пользователя, сохраняя эту строку кода, гарантируя, что доступ может быть отозван от определенных лиц или групп в любое время, если правильный пароль будет удален из файла .htpasswd.

Чтобы узнать больше об этой проблеме, прочитайте: Использование .htpasswd с учетной записью общего хостинга Linux.

Определение удобных ссылок на контент сайта и статические страницы

Одним из самых распространенных текущих применений плодовитого файла «.htaccess» является использование параметров файла для определения семантически простой »,Permalinks«для контента сайта и статических страниц при использовании программного обеспечения для управления контентом, такого как WordPress или MovableType, что не только помогает пользователям запоминать и перезагружать контент сайта, но также улучшает рейтинг поиска веб-сайтов в основных поисковых системах. Эти поисковые системы используют семантически дружественные URL-адреса для определения какой контент находится на любой заданной странице и соответствует ли контент URL-адресу. Соответствие URL-адреса заголовка указывает на больше полномочий и большую вероятность того, что пользователь найдет информацию, которую они ищут. Соответственно, веб-сайт затем занимает более высокое значение основные поисковые системы при использовании структуры постоянных ссылок.

Для тех пользователей, которые установили WordPress на серверы своего сайта, следующая строка добавляется в процессе установки почти как требование - особенно с более поздними версиями программного обеспечения с версии 3.0 и новее. Строка кода выглядит точно так же, как в примере ниже, и является стандартом для более чем 60 миллионов самообслуживаемых клиентов WordPress по всему миру.

RewriteEngine On
RewriteBase /
RewriteCond% {} REQUEST_FILENAME!-Е
RewriteCond% {} REQUEST_FILENAME!-D
RewriteRule. / Index.php [L]

Опять же, легко увидеть линейную структуру команд программирования «.htaccess». Эти несколько простых строк кода говорят серверу использовать файл WordPress «index.php» в качестве базы для всех URL-адресов, которые исходят из самого программного обеспечения для управления контентом. Используя этот файл в качестве базы и переписывая заголовки записей как постоянные ссылки, переписывание URL по существу объединяет запросы к базе данных с разрешениями на файлы для создания «дружественных» URL-адресов. Изменение файла «.htaccess» для перезаписи его URL-адресов в настоящее время является ведущим, если не единственным, способом создания более дружественных URL-адресов из PHP и ASP-решений для управления контентом.

Направляющие поисковые системы на недавно перемещенный контент локально или удаленно

Хотя постоянные ссылки были разработаны для устранения процесса случайно перемещенного контента и интенсивных перенаправлений, они не полностью устранили проблему. В самом деле, permalinks можно управлять в любой панели управления решением управления контентом; в момент, когда пользователь меняет структуру permalink, все, что входит в сферу действия программного обеспечения CMS, может отсутствовать и бросать ошибки поисковым системам и пользователям. Это можно устранить как проблему с очень простой строкой кода «.htaccess», которая перенаправляет клиентов и бросает «невидимую» ошибку в основные поисковые системы. Код выглядит так:

Перенаправить 301 / архив / / прошлые записи /

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

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

Перенаправить 301 / http://www.your-domain-name.com

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

От невидимых ошибок и перенаправления к фактическим страницам ошибок для посетителей сайта

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

ErrorDocument 404 /404.html

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

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

Когда All Else Fails запретит пользователям несколько простых строк кода

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

Чтобы сохранить целостность сайта и убедиться, что другие читатели не переносятся на другие сайты из-за полного разочарования только несколькими плохими яблоками, файл «.htaccess» позволяет запретить определенные IP-адреса или целые диапазоны (или «блоки») IP-адресов. Это означает, что все страны могут быть запрещены, все интернет-провайдеры могут быть запрещены, или целые штаты, сообщества или организации могут быть вынуждены отправиться в другое место, чтобы читать их ежедневный контент и вызывать проблемы. При использовании в файле «.htaccess» сайта процесс запрещения пользователя выглядит следующим образом:

позвольте от всех
отрицаю от 158.23.144.12
отрицаю от 24.100

В приведенном выше примере сайту дается указание разрешить посетителям со всех IP-адресов, кроме тех, кто посещает IP-адрес 158.23.144.12. Кроме того, всем посетителям в диапазоне IP-адресов 24.100 запрещается доступ к сайту. Этот диапазон, скорее всего, запретит клиентской базе всего интернет-провайдера читать содержимое сайта. Будьте уверены, однако, что это иногда необходимо в тяжелых случаях.

Обрежьте файл .htaccess и используйте некоторые функции над сайтом

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

Статья Джерри Лоу

Geek папа, SEO данных наркоман, инвестор, и основатель веб-хостинга секрет раскрыты. Джерри строил интернет-активы и зарабатывал деньги онлайн с 2004. Он любит бессмысленный каракули и пробует новую пищу.

Присоединиться: