Если у вас есть веб-сайт, вы, вероятно, уже немного знаете о файле .htaccess или, по крайней мере, что-то о нем слышали. В этом руководстве мы поможем вам понять назначение файлов .htaccess, а также обсудим, как вы можете получить доступ к этому файлу и настроить его для своего веб-сайта на WordPress.
Для чего нужен файл .htaccess ?
Файл .htaccess используется веб-сервером Apache, чтобы определить, как он должен обслуживать файлы для посетителей. Вы можете использовать этот файл для предоставления различных параметров конфигурации для разных каталогов. Параметры, установленные вами в файле .htaccess внутри определенного каталога, будут применяться ко всем файлам и подкаталогам в этом каталоге.
Вы можете использовать файл .htaccess для множества вещей, таких как переписывание URL-адресов, перенаправление пользователей с небезопасной на защищенную версию ваших веб-страниц или управление кешированием.
Где находится файл .htaccess на WordPress?
Обычно имена файлов содержат название и расширение, например, contacts.pdf и log.txt. Однако файл .htaccess не имеет расширения. Он начинается с точки, потому что это делает его скрытым в операционных системах Unix и Linux. Файл находится в корневом каталоге WordPress.
Однако сначала вы можете не увидеть его, потому что ваш FTP-клиент может его скрывать. Если вы не видите файл .htaccess в корневой папке WordPress, поищите в своем FTP-клиенте параметр для отображения скрытых файлов.
После этого вы должны увидеть файл, как на изображении выше. Имя файла, вероятно, будет по-прежнему более светлым по сравнению с обычными файлами. Если вы по-прежнему не видите файл .htaccess, попробуйте последовать советам ниже.
Как WordPress использует файлы .htaccess ?
Само ядро WordPress использует файлы .htaccessдля перенаправления URL-адресов, чтобы сделать их удобочитаемыми, оптимизированными для SEO и удобными для пользователя. Файл находится в корневом каталоге вашего сайта. Это место, где вы впервые установили WordPress. Здесь также будет файл с именем index.php — в том же каталоге, что и файл .htaccess.
Если вы войдете в панель администратора WordPress и затем перейдете в «Настройки»> «Постоянные ссылки», вы увидите, что WordPress позволяет вам выбрать формат для создания URL-адресов для любых публикаций. URL-адрес может содержать, помимо прочего, месяц, день, категорию сообщения и название сообщения.
Выбор одного из этих параметров и нажатие на кнопку « Сохранить изменения»предложит WordPress обновить файл .htaccess с некоторыми условиями перезаписи URL. Тогда ваш файл .htaccess будет иметь некоторые правила перезаписи URL, похожие на те, что перечислены ниже.
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 | # BEGIN WordPress # The directives (lines) between «BEGIN WordPress» and «END WordPress» are # dynamically generated, and should only be modified via WordPress filters. # Any changes to the directives between these markers will be overwritten. <IfModule mod_rewrite.c> RewriteEngine On RewriteRule .* — [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ — [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule. /index.php [L] </IfModule>
# END WordPress |
Ваш собственный файл .htaccess может содержать гораздо больше правил в зависимости от плагинов, которые вы установили на своем сайте. Например, любые установленные вами плагины безопасности могут добавлять правила в файл, чтобы предотвратить доступ с определенных IP-адресов или разрешить доступ только с IP-адресов из белого списка. Плагины безопасности могут делать гораздо больше,например предотвращать спам-комментарии от ботов.
На следующем изображении показаны некоторые правила, записанные в файле .htaccess подключаемым модулем All In One WP Security.
Вы также найдете некоторые дополнительные правила, связанные с кешированием файлов разных типов. Они могут быть установлены, если вы установили какие-либо плагины оптимизации WordPress, которые обрабатывают кеширование. Вот изображение с некоторыми правилами о сроках хранения кешей разных типов файлов. Они были добавлены плагином кеширования.
Проблемы с поиском и обновлением файлов .htaccess
Файл.htacces должен работать с веб-сервером Apache. Значит, вы не найдете .htacces на других серверах, таких как Nginx. Если вы просмотрели свой корневой каталог и по-прежнему не видите файл .htaccess, посмотрите на своем веб-хосте, работаете вы на Apache или какой-либо другой технологии.
WordPress также должен иметь соответствующие разрешения для чтения и изменения файла .htaccess. Вам нужно будет изменить права доступа к файлу, чтобы WordPress мог обновлять файл, если он не работает по умолчанию.
Основные сведения о файлах .htaccess
Любые плагины безопасности и кеширования, которые вы устанавливаете на свой веб-сайт, обычно делают больше, чем просто записывают кучу строк внутри вашего файла .htaccess. Базовое понимание некоторых распространенных команд поможет вам читать и править файл .htaccess, если возникнет такая необходимость. Это также может помочь вам избежать установки каких-либо плагинов для выполнения простых задач, таких как перенаправление пользователей на защищенные страницы или со старого несуществующего URL-адреса на новый.
Всегда важно сделать резервную копию исходного файла .htaccess, прежде чем вы начнете вносить в него какие-либо изменения. Это связано с тем, что любая ошибка при изменении файла может вывести ваш сайт из строя. Наличие копии оригинала позволит вам запустить веб-сайт, просто заменив измененный файл исходной версией.
Вы можете написать свои правила, а также комментарии, чтобы давать инструкции другим или объяснять, почему вы написали эти правила. Любые комментарии в файле .htaccess должны начинаться с символа #. Мы покажем вам, как выполнить некоторые основные задачи, напрямую отредактировав файл .htaccess вместо установки плагина.
Перенаправление старых URL-адресов
Допустим, у вас есть популярный пост по старому URL-адресу, которого больше не существует. В таких случаях вы можете перенаправить людей, посещающих старый URL, на вашу новую веб-страницу.
Для этого вы можете добавить в файл .htaccessследующую строку. Не забудьте заменить пути фактическими значениями URL.
1 | Redirect 301 /some-old-post-url/ /new-post-url/ |
Вы также можете перенаправить весь свой веб-сайт на новый URL-адрес, используя ту же команду. В моем случае установка WordPress находится в каталоге с именем wordpress. Итак, вы можете добавить следующую строку в свой файл .htaccess, чтобы перенаправить его в другое место.
1 |
После того, как вы добавите указанную выше строку, кто-то, посетивший / wordpress / some-post /,будет перенаправлен на code.tutsplus.com/some-post/ .
Кэширование общих типов файлов
Постоянные посетители вашего сайта будут снова и снова запрашивать одни и те же файлы CSS, JavaScript и изображений. Поэтому имеет смысл позволить им получать эти файлы из кеша вместо обычной передачи. Вы можете добавить базовые функции кэширования с помощью файла .htaccess. Вот пример кеширования этих файлов.
01 02 03 04 05 06 07 08 09 10 11 | <IfModule mod_expires.c> ExpiresActive On
ExpiresByType text/css A604800 ExpiresByType text/javascript A1296000 ExpiresByType application/javascript A1296000 ExpiresByType application/x-javascript A1296000
ExpiresByType image/jpeg A2592000 ExpiresByType image/png A2592000 </IfModule> |
Число после Aустанавливает общее количество секунд, в течение которых файлы будут кэшироваться. Есть еще один способ установить период кэширования, указав период времени в виде значений, удобочитаемых человеком.
01 02 03 04 05 06 07 08 09 10 11 | <IfModule mod_expires.c> ExpiresActive On
ExpiresByType text/css «access plus 1 week» ExpiresByType text/javascript «access plus 15 days» ExpiresByType application/javascript «access plus 15 days» ExpiresByType application/x-javascript «access plus 15 days»
ExpiresByType image/jpeg «access plus 1 month» ExpiresByType image/png «access plus 1 month» </IfModule> |
Теперь вы должны иметь возможность указывать инструкции кэширования для типов файлов, которые не охватываются подключаемыми модулями кеширования.
Перенаправление пользователей на защищенные страницы
Другой вариантиспользования файла .htaccess — перенаправление пользователей со страниц HTTP на соответствующие страницы HTTPS. Для этого вы можете использовать следующие правила.
1 2 3 | RewriteEngine On RewriteCond %{HTTPS} off |
Флаги Rи Lмогут быть в любом порядке. Rфлаг сообщает серверу для отправки указанного кода ответа и Lфлаг сообщает серверу прекратить обработку любых более правил в наборе.
Итог
Мы начали этот пост с краткого объяснения назначения файлов .htaccess. После этого мы узнали, где вы можете найти эти файлы в WordPress и как WordPress и другие плагины используют их для таких вещей, как кэширование ресурсов и повышение безопасности. Наконец, мы обсудили некоторые общие правила и команды, которые вы найдете в своих файлах .htaccess, и способы их добавления, если они еще не существуют.
Надеемся, эта информация вам пригодится.
0 комментариев