Стандартный файл .htaccess для WordPress?

17 мар. 2012 г., 13:10:36
Просмотры: 405K
Голосов: 22

Мои файлы .htaccess перехватывают файл .htaccess WordPress.

Какие модули и какие настройки (указанные в .htaccess) необходимы для работы WordPress? Другими словами, где можно найти стандартный файл .htaccess WordPress?

1
Комментарии

Существует статья в WordPress codex о файлах htaccess.

Nicolai Grossherr Nicolai Grossherr
18 мая 2015 г. 14:34:15
Все ответы на вопрос 4
3
36

Вот стандартный код для этого файла.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Вы можете проверить стандартный файл htaccess здесь.

http://codex.wordpress.org/Using_Permalinks.

Спасибо. Надеюсь, это немного поможет.

17 мар. 2012 г. 13:16:05
Комментарии

Пожалуйста, смотрите чат здесь об этом.

User User
6 июн. 2012 г. 06:28:51

!!! Этот ответ устарел. Используйте новый: https://wordpress.stackexchange.com/a/250918/33667

T.Todua T.Todua
13 дек. 2020 г. 17:03:51

Обновленная ссылка: https://wordpress.org/support/article/using-permalinks/

Michael Yaeger Michael Yaeger
25 мар. 2022 г. 18:32:21
1

WordPress не содержит файл .htaccess в готовом виде.

Правила записываются в файл функцией save_mod_rewrite_rules() и генерируются с помощью $wp_rewrite->mod_rewrite_rules().

Обратите внимание, что мультисайтовая установка имеет другие (более сложные) правила и обрабатывается иначе.

17 мар. 2012 г. 14:10:53
Комментарии

+1 за правильное направление. Пожалуйста, проверьте, правильно ли я понял проблему в своем ответе. Я думаю, что главное здесь - просто использовать Rewrite_WP API, а не изобретать велосипед с собственными .htaccess-файлами.

User User
22 апр. 2012 г. 13:42:17
0

Используйте последнюю версию стандартного .htaccess

https://wordpress.org/support/article/htaccess/.

1 янв. 2017 г. 10:04:16
1

Используйте канал Freenode #wordpress для поиска соответствующей документации, обычно в разделе /topic. Там я нашел ключ Class WP_Rewrite здесь, официальный wordpress.org в лучшем случае вводит в заблуждение и является маркетинговым. В любом случае, не путайте правила перезаписи Apache с правилами перезаписи WP, хотя название WP, вероятно, происходит от аналога Apache.

API WP_Rewrite гласит

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

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

перехват

Код здесь имеет некоторые условия, если файл .htaccess существует -- не на 100% уверен в их выводах, поскольку это плохо документировано и не могу понять там именование, но основной посыл, вероятно, в том, что безопасный способ поддержания правил перезаписи - это использование API WP_Rewrite, WP может измениться в будущем.

Например, простое правило перезаписи Apache RewriteRule ^hello$ Layouts/hello.html [NC,L] по-видимому, выглядит как add_rewrite("^hello$", "Layouts/hello.html"), не тестировал, но пытался следовать API ниже:

add_rewrite_rule (строка 19)
Добавить прямое правило перезаписи.

см.: WP_Rewrite::add_rule() для подробного описания.
с версии: 2.1.0
void add_rewrite_rule (string $regex, string $redirect, [string $after = 'bottom'])
string $regex: Регулярное выражение для сопоставления с запросом.
string $redirect: Страница для перенаправления.
string $after: Опционально, по умолчанию 'bottom'. Куда добавить правило, также может быть 'top'.

Связанные ссылки

  1. http://codex.wordpress.org/Rewrite_API/add_rewrite_rule

  2. http://pmg.co/a-mostly-complete-guide-to-the-wordpress-rewrite-api

  3. Спасибо toscho за помощь здесь, небольшой разговор в чате.

22 апр. 2012 г. 13:31:21
Комментарии

Я довольно уверен, что я что-то здесь неправильно понял, пожалуйста, просмотрите этот чат здесь. Это произошло из-за того, что мой блог был на корневом уровне, то есть что-то вроде www.hello.com/blog/?

User User
6 июн. 2012 г. 06:33:47