301 – permanent redirect

SEOшники очень любят склеивать имя домена с www. и без него, оставляя что-то одно, кому что больше нравится. Лично мне больше нравится без www, т.к. www – пережиток прошлого, эдакий атавизм.

Apache

В веб-сервере Apache для склейки, как правило, используется редирект или реврайт (правило). Первый способ – это создание двух отдельных доменов на сервере и перенаправление с домена с www на домен без www с помощью редиректа в файле .htaccess, например:

RedirectMatch (.*) http://domain.tld/$1

Если вы сторонник mod_rewrite и домен у вас создан не раздельно, можно использовать следующий код:

Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} !^www.domain.tld$ [NC]
RewriteRule ^(.*)$ http://www.domain.tld/$1 [R=301,NC]

При этом будет происходить редирект с domain.tld на www.domain.tld, если нужно наоборот, просто удалите в правиле "www".

Nginx

В веб-сервере nginx, чтобы перенаправлять запросы с домена с www на домен без www, пропишите в блоке server{} следующий код:

if ($host != 'domain.tld' ) {
   rewrite  ^/(.*)$  http://domain.tld/$1  permanent;
}

Но в этом случае вы не сможете использовать субдомены, если они вам нужны :), пропишите следующее правило:

if ($host = 'www.domain.tld' ) {
   rewrite  ^/(.*)$  http://domain.tld/$1  permanent;
}

N.B.

Учтите, что ВордПресс сам умеет редиректить, в нем нужно изменить настройки в:

Параметры –> Общие


Пропишите в блоках "Адрес WordPress (URL)" и "Адрес сайта (URL)" желаемый адрес, имя домена с www или без него.

TIP
Вы также можете изменить директорию установки WordPress.

Читать остальную часть заметки »

Теги: , , , , , , , , , , ,

Пограничные войны

Не секрет, что настоящую сильную DDoS-атаку может отбить (отфильтровать) только серьезная железка [магистрального] провайдера. Бороться своими силами (силами серверной ОСи) можно только с небольшими атаками и с разными другими мелкими неприятностями, как то подбор паролей (брутфорс), наплыв нецелевого траффика (китайцев на русский сайт 🙂 ), взлом сайтов и т.п.

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

SetEnvIf GEOIP_COUNTRY_CODE CN BadCountry
SetEnvIf GEOIP_COUNTRY_CODE TW BadCountry
Order Deny,Allow
Deny from env=BadCountry

Allow from 1.2.3.4 # разрешенный адрес заблокированнй страны
Allow from 2.3.4.5 # разрешенный адрес заблокированнй страны

Можно открыть доступ только определенным странам:

SetEnvIf GEOIP_COUNTRY_CODE UA GoodCountry
SetEnvIf GEOIP_COUNTRY_CODE RU GoodCountry
Order Allow,Deny
Allow from env=GoodCountry
Under Attack: рубим с плеча

Если сайт подвергается DDoS-атаке и вы определили, что все запросы идут из какой-то определенной страны, будет лучше, если заблокировать страну в фаерволе, чтобы не было большой нагрузки на Apache.

 

Читать остальную часть заметки »

Теги: , , , , , , , , , , , , , , , , ,