linux:webserver:htaccess

Налаштування .htaccess

# 301 редиректи
Redirect 301 /blog/old-article-1/ https://vashdomen.com/blog/new-article-1/
Redirect 301 /blog/old-article-2/ https://vashdomen.com/blog/new-article-2/
Redirect 301 /blog/old-article-3/ https://vashdomen.com/blog/new-article-3/
 
# Редирект з www на без www
RewriteCond %{HTTP_HOST} ^www.vashdomen.com$ [NC]
RewriteRule ^(.*)$ http://vashdomen.com/$1 [R=301,L]
 
# Примусовий редірект з http на https
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
# Свої сторінки з помилками
ErrorDocument 403 /errors/403.html
ErrorDocument 404 /errors/404.html
ErrorDocument 500 /errors/500.html
ErrorDocument 504 /errors/504.html
# Заборонити доступ до сайту з конкретних IP-адрес
Order Allow,Deny
Allow from all
Deny from 123.45.67.89
Deny from 111.22.33.44
 
# Заборонити доступ для будь-яких IP, які починаються з 111.22
Deny from 111.22.*.*
 
# Заборонити доступ до діапазону 111.22.33.0 – 111.22.33.199
Deny from 111.22.33.0/25
Deny from 111.22.33.128/26
Deny from 111.22.33.192/29
 
# Дозволити доступ до сайту лише з конкретних IP-адрес
Order Deny,Allow
Deny from all
Allow from 123.45.67.89
Allow from 111.22.33.44
 # Заборонити доступ до wp-config.php
<Files wp-config.php>
Order Allow,Deny
Deny from all
</Files>
 
# Заборонити доступ до системних файлів
<FilesMatch ".(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">
Order Allow,Deny
Deny from all
</FilesMatch>
 
# Дозволити доступ до адмінки WordPress тільки з конкретних IP-адрес
<FilesMatch "^(wp-login.php|xmlrpc.php)$">
Order deny,allow
Deny from all
Allow from 123.45.67.89
Allow from 111.22.33.44
</FilesMatch>
# Доступ до сторінки входу в адмінку WordPress за паролем
<FilesMatch "^(wp-login.php|xmlrpc.php)$">
AuthType basic
AuthName "Directory Name"
AuthUserFile /home/username/public_html/auth/.htpasswd
Require valid-user
</FilesMatch>

Генерація файла

htpasswd -mbc /Dir/.htpasswd username PassWord
# Заборонити індексацію каталогів
Options -Indexes

Ідеться про ситуацію, коли хтось розмістив у себе на сайті зображення за посиланнями на ваш сервер.

# Заборона на крадіжку картинок (hotlinking)
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https://(www.)?vashdomen.com/.*$ [NC]
RewriteRule .(gif|jpg|swf|flv|png)$ https://www.vashdomen.com/feed.gif [R=302,L]

Працює ця директива так: ви розміщуєте у себе на сервері спеціальне зображення для таких злодіїв, і коли вони розміщують будь-яке ваше зображення у себе на сайті, замість нього відображається саме заготовлена картинка.

  • linux/webserver/htaccess.txt
  • Востаннє змінено: 09/11/2023 03:21
  • (зовнішнє редагування)