1. Начало
  2. Уеб сайт
  3. Уеб разработка
  4. Пренасочване от един URL адрес към друг (htaccess)

Пренасочване от един URL адрес към друг (htaccess)

Ето няколко пренасочвания, които могат да се извършат чрез файл .htaccess:

Пренасочване от един уеб адрес към друг:

RewriteEngine On
RewriteCond %{REQUEST_URI} ^(/address) [NC]
RewriteRule ^(.*) /to-address [L]

address – Това е уеб адреса, който ще се достъпва и ще активира пренасочването.

to-address – Адресът към който ще се извърши пренасочването.

Можете да зададете директория или определен файл за пренасочване, например:

RewriteCond %{REQUEST_URI} ^(/directory) [NC]

или

RewriteCond %{REQUEST_URI} ^(/file.php) [NC]

Пренасочване към определен адрес, когато сайта се достъпва от IP адреси различни от посочените:

RewriteEngine On
# ако не е IP адрес 1
RewriteCond %{REMOTE_ADDR} !^xxx\.xxx\.xxx\.xxx$
# ако не е IP адрес 2
RewriteCond %{REMOTE_ADDR} !^xxx\.xxx\.xxx\.xxx$
# пренасочване на заявките към директория subdir
# с изключение на заявки към посочената директория
RewriteRule !^subdir http://mysite.com/subdir/ [R=301,L]

От тези правила, в случай че не са ви необходими, можете да премахнете двата реда с IP адресите.

Пренасочване на файл към директория:

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/file\.php$ [NC]
RewriteRule .* http://www.mysite.com/directory/ [R,L]

Със същите правила можете да пренасочите директория към определен файл, файл към файл или директория към директория, например:

RewriteCond %{REQUEST_URI} ^/directory$ [NC]
RewriteRule .* http://www.mysite.com/file.php [R,L]

След като извършите промени по .htaccess файла, може да е необходимо да изтриете кешираната информация в браузъра, за да видите промените

Обновена: 12.10.2022
Беше ли Ви полезна тази статия?

Вижте още