В тази статия ще Ви покажем как да пуснете mod_rewrite на вашия хостинг акаунт.
Какво е Mod_Rewrite?
Mod_Rewrite е модул на Apache, който Ви помага да правите пренасочвания и да дефинирате правила използвайки .htaccess файла.
За повече информация можете да посетите официалната страница за модула на Apache mod_rewrite.
Как да активираме Mod_Rewrite на споделен хостинг?
Модула на Apache mod_rewrite е предварително инсталиран на всички хостинг планове. Поради тази причина няма да има нужда да инсталирате ръчно модула на сървъра.
За да активирате mod_rewrite за вашия уебсайт .htaccess файла трябва да съдържа следния код:
RewriteEngine On
RewriteBase /
Крайния код в .htaccess трябва да изглежда по следния начин:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
Ако сте инсталирали приложението си в поддиректория на вашия домейн (например domain.com/site/) трябва да направите няколко малки промени по кода:
RewriteEngine On
RewriteBase /site/
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /site/index.php [L]
Не забравяйте да замените „site“ с името на директорията, в която се намира вашия уебсайт
Как да активираме mod_rewrite на VPS?
На сървър с Debian/Ubuntu mod_rewrite е инсталиран но не е активен по подразбиране. Ако имате активен VPS акаунт и искате да активирате mod_rewrite трябва да следвате тези стъпки:
- Свържете се към VPS-а чрез SSH и изпълнете следната команда:
a2enmod rewrite
- Рестартирайте Apache сървъра:
/etc/init.d/apache2 restart
- Намерете главния .htaccess файл в директорията на уебсайта Ви и копирайте следния код:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
Запаметете промените, които сте направили и тествайте отново уебсайта.