[Ссылка] 10 отличных приемов с .htaccess для WordPress

Тема в разделе "Wordpress", создана пользователем g-prime, 26 мар 2009.

Статус темы:
Закрыта.
Модераторы: DzSoft, Sorcus
  1. g-prime

    g-prime איך בין גאָט

    Регистр.:
    11 авг 2008
    Сообщения:
    779
    Симпатии:
    1.131
    Внимание!
    Перед изменением файла .htaccess не забудьте сделать его резервную копию.

    1 — Перенаправляем WordPress RSS поток на feedburner с использованием .htaccess
    Почему некоторые вебмастера не используют feedburner? Ведь это такой замечательный инструмент для контроля за подписками на RSS. Проблема в том, что приходится руками исправлять файлы шаблонов. Этот прием поможет сохранить Ваше время.
    И не забудьте исправить в строке 6 на Ваш код

    HTML:
    <IfModule mod_rewrite.c>
     RewriteEngine on
     RewriteCond %{HTTP_USER_AGENT} !FeedBurner    [NC]
     RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]
     RewriteRule ^feed/?([_0-9a-z-]+)?/?$ httр://feeds2.feedburner.com/wordpress[R=302,NC,L]
    </IfModule>


    2 — Удалить /category/ из пути в адресе WordPress
    По умолчанию категории в WordPress отображаются так: httр://www.wordpress.com/blog/category/wordpress
    А это не очень красиво, да и адрес выглядит длинновато.
    Сейчас Вы узнаете как исправить это с помощью .htaccess

    HTML:
    RewriteRule ^category/(.+)$ httр://www.yourblog.com/$1 [R=301,L]
    Теперь категории будут выглядеть как:
    httр://www.wordpress.com/blog/wordpress


    3 — Использование кэша браузера
    Очень хороший путь оптимизации твоего блога это использование кэша браузера. Этот код улучшает кэширование браузером статических файлов.
    При повторном запросе к файлу, который не изменился клиент получит ответ 304, а не содержимое файла.

    HTML:
    FileETag MTime Size
    <ifmodule mod_expires.c>
      <filesmatch "\.(jpg|gif|png|css|js)$">
           ExpiresActive on
           ExpiresDefault "access plus 1 year"
       </filesmatch>
    </ifmodule>


    4 — Сжатие статических данных
    Этот код уменьшит объём данных передаваемых между сервером и пользователем за счет их сжатия.

    HTML:
    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[678] no-gzip
    BrowserMatch bMSIE !no-gzip !gzip-only-text/html



    5 — Перенаправление постоянных ссылок на основе Дня и имени на /%postname%/
    Сначала зайдите в админку WordPress, зайдите в Settings → Permalinks и выберите custom.
    Заполните поле с /%postname%/.
    Теперь постоянные ссылки будут выглядеть так: httр://www.yourblog.com/name-of-the-post

    Теперь нам нужно перенаправить все старые ссылки на новые постоянные.
    Внесите в .htaccess следующие строки:

    HTML:
    RedirectMatch 301 /([0-9]+)/([0-9]+)/([0-9]+)/(.*)$ httр://www.domain.com/$4



    6 — Запретить комментирование если отсутствует referrer
    Метод построен на том, что многие спам-боты не передают referer когда постят данные.
    Этот код проверяет поле referrerи блокирует отправку комментария если отсутствует referer при обращении к файлу wp-comments-post.php.
    Не забудьте в строке 4 вписать домен своего блога

    HTML:
    RewriteEngine On
    RewriteCond %{REQUEST_METHOD} POST
    RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
    RewriteCond %{HTTP_REFERER} !.*yourblog.com.* [OR]
    RewriteCond %{HTTP_USER_AGENT} ^$
    RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]



    7 — Перенаправить пользователя на страницу-заглушку
    на время работ на сайте желательно перенаправлять пользователей на временную страницу-заглушку
    Замените в строке 2 maintenance.html на название вашего файла.
    И в строке 3 впишите свой IP, чтобы вас не перенаправляло на эту заглушку.

    302-редирек используется чтобы поисковые системы не проиндексировали содержимое временной страницы.

    HTML:
    RewriteEngine on
    RewriteCond %{REQUEST_URI} !/maintenance.html$
    RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123
    RewriteRule $ /maintenance.html [R=302,L]



    8 — Защита блога от хотлинков
    Хотлик — это использование файлов размещенных на вашем сайте на страницах других сайтов с целью сэкономить свой серверный трафик.
    Для борьбы с этой напастью помогут следующие строки в .htaccess

    HTML:
    RewriteEngine On
    #Replace ?mysite\.com/ with your blog url
    RewriteCond %{HTTP_REFERER} !^http://(.+\.)?mysite\.com/ [NC]
    RewriteCond %{HTTP_REFERER} !^$
    #Replace /images/nohotlink.jpg with your "don't hotlink" image url
    RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/nohotlink.jpg [L]



    9 — Разрешить доступ к wp-admin только с Вашего IP
    Дополнительной защитой Вашего блога от взлома может служить ограничение списка адресов, с которых разрешено заходить в админку блога.
    Не забудьте вставить свой IP в строке 8.
    Если Вы захотите использовать дополнительные адреса для доступа добавьте строки allow from xx.xx.xxx.xx

    HTML:
    AuthUserFile /dev/null
    AuthGroupFile /dev/null
    AuthName "Example Access Control"
    AuthType Basic
    <LIMIT GET>
    order deny,allow
    deny from all
    allow from xx.xx.xx.xx
    </LIMIT>



    10 — Блокирование спамеров в WordPress через .htaccess

    Часто спам-боты ходят с одних и техже IP. Следующий прием поможет блокировать доступ с этих адресов.
    Внеси адрес спамера в строке 3.
    Можно расширить список заблокированных адресов добавив строки deny from xxx.xx.xxx.xxx.

    HTML:
    <Limit GET POST>
    order allow,deny
    deny from 200.49.176.139
    allow from all
    </Limit>

    Оригинал статьи, здесь
     
    rOOt-uSEr и crashvlad нравится это.
  2. rOOt-uSEr

    rOOt-uSEr

    Регистр.:
    23 сен 2008
    Сообщения:
    185
    Симпатии:
    32
    А есть вариант, чтобы забить диапазон ай-пи от и до, а не постоянным пополнением с помощью allow from xx.xx.xx.xx ?
     
  3. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    rOOt-uSEr нравится это.
  4. Meddixx

    Meddixx Создатель

    Регистр.:
    11 мар 2009
    Сообщения:
    36
    Симпатии:
    1
    2-й пункт не работает, если на ВП стоит примочка от Article Directory
    Жаль. Может есть другой способ ?
     
  5. g-prime

    g-prime איך בין גאָט

    Регистр.:
    11 авг 2008
    Сообщения:
    779
    Симпатии:
    1.131
    Попробуй поставить плагин: Top Level Categories
     
  6. Meddixx

    Meddixx Создатель

    Регистр.:
    11 мар 2009
    Сообщения:
    36
    Симпатии:
    1
    Latest Version: Top Level Categories 1.0.1.....
    This plugin will not work if you have a permalink structure like %postname or %category%/%postname% — there is currently no workaround
    :confused:

    Может еще что-то пробовали ?
     
Статус темы:
Закрыта.