Хитрини с .htaccess файла – част 1

Съвети от support- aДойде ред на новата „порция“ от нашите „Съвети от support- a“. 🙂 Както вече знаете, целта на тази категория е да получавате професионално мнение и полезна информация от вашата хостинг компания СуперХостинг.БГ. Не малко са въпросите ви за .htaccess файла. По тази тема има много какво да се каже… Вече е факт първата от поредицата публикации, в които колегите ще споделят интересни решения и казуси, с които се сблъскват ежедневно. Надяваме се така да ви помогнем в опознаването на възможностите, които дава .htaccess файла. Споделяйте и вие интересни моменти от вашата практика!

В следващите редове нашият колега Алекс от отдел Техническа поддръжка посочва каква настройка е необходима и какво трябва да съобразите, така че основният домейн в акаунта ви да зарежда съдържание от друга, желана от вас поддиректория.

На нашите сървъри за споделен хостинг като глобална настройка е зададено, основния домейн на всеки акаунт да зарежда съдържание от /public_html директория – основна директория (Document Root). След голямото увеличение на Add On домейните, клиентите ни питат как да променят основната директория за конкретния акаунт, без това да променя URL адреса, на който се достъпва сайта. Тъй като това е настройка, зададена в конфигурацията на самия сървър, не е удачно да бъде променяна само за дадения акаунт. В този случай, с колегите съдействаме да се извършат желаните промени на ниво акаунт чрез Rewrite правилата в .htaccess файла.

Пример за подобна ситуация е, когато в даден хостинг акаунт има добавени голям брой Add-On домейни. По подразбиране отделните Add-On домейни се създават с Document Root – поддиректория на /public_html. Клиента желае и основния домейн да зарежда съдържание на поддиректория на /public_html за по-лесно управление на файловете в акаунта.

Чрез добавяне на следните няколко реда в .htaccess файла, разположен в /public_html, вашият сайт ще зарежда съдържание от желаната поддиректория на /public_html, без това да променя URL адреса:

RewriteEngine Оn
RewriteCond %{HTTP_HOST} ^domainname.tld$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.domainname.tld$
RewriteCond %{REQUEST_URI} !directoryname/
RewriteRule (.*) /directoryname/$1 [L]

* domainname – името на вашия домейн;
* tld – домейн от първо ниво (Top Level Domain) – .com, .bg, .eu, .net, .org …;
* directoryname – името на желаната поддиректория на /public_html;

По този начин, достъпвайки вашия домейн с или без www отпред, ще се зарежда съдържанието, което сте разположили в /directoryname.

Трябва да се вземат предвид следните 2 особености относно действието на .htaccess файла:

1. Аpache уеб сървърът обхожда рекурсивно директориите за .htaccess файлове и те влияят на цялото дърво от поддиректории. Поради тази причина са възможни конфликти между Rewrite правилата, описани в .htaccess файлове, разположени в директории и техните поддиректории. Обикновено при еднакви системи или когато няма специфични правила, това не създава проблеми. Въпреки това, трябва да го имате предвид в случаи на некоректно сработване на други директиви. Добра практика е поставянето на .htaccess файлове със съответните правила в папки, намиращи се на едно и също ниво.

2. Някои системи използват глобално зададената на сървъра основна директория за тяхната работа. С посочените по-горе правила се променя само директорията, от която зарежда съдържание вашето уеб приложение. Глобално зададената на сървъра Document Root, остава непроменена: /home/accountname/public_html. Поради тази причина, е необходимо да съобразите начина на работа на софтуера, който използвате във вашия сайт, за да избегнете възможни конфликти. Проверка за настройки в сървъра можете да направите чрез файл с разширение .php (например: p.php), в който въвеждате следното:

<?php
phpinfo();
?>

*accountname – името на вашия акаунт;

Чрез този .php файл се визуализират глобалните настройки на сървъра, както и локално извършените в собствения php.ini файл, който по подразбиране се намира в основната директория на вашия акаунт. В секцията PHP Variables, за _SERVER[„DOCUMENT_ROOT“], можете да видите зададената на сървъра основна уеб директория. Тази променлива, може да променя стойността си, например за Add-On домейн, тъй като за него вие имате възможност да посочвате Document Root.

Ще се радваме да споделите като коментар под тази публикация интересни случаи и от вашата практика! Имали ли сте подобни казуси и причини, поради които сте желали смяна на основната директория, от която се зарежда вашия сайт? За какви други особени ситуации, директиви или действия на .htaccess файла искате да научите повече? Питайте! А ние ще ви отговорим и ще предоставим информацията, от която имате нужда?

Не пропускайте да се абонирате за нашия блог и да следите нашата фен страница във Facebook, защото сме ви приготвили още много интересна и полезна информация!

СуперХостинг.БГ
СуперХостинг.БГ
СуперХостинг.БГ е СуперЕкипът! Ежедневно всеки дава най-доброто от себе си, за да можете вие, клиентите на СуперХостинг.БГ, да сте номер едно. СуперСилата на СуперЕкипа е, че винаги е готов да ви даде точната информация, тази от която се нуждаете и за която питате.
0 0 votes
.
Абониране
Уведоми ме при
guest

16 Коментара
Inline Feedbacks
View all comments

Black Friday: WooCommerce магазинът ми продава повече от магазина ти!

0
Задаваме 7 въпроса, през които трябва да преминете, за да имате изряден WooCommerce магазин. Типично в наш стил, не Ви спестяваме и отговорите.
5 причини да изберете домейн .EU ( а защо не и .ЕЮ )

5 причини да изберете домейн .EU (а защо не и .ЕЮ )

0
Домейнът .EU е сравнително нов за пазара на домейни. От края 2016 година е един от най-популярните Top Level домейни.
Какви са причините за изоставените колички?

7 причини клиентите Ви да изоставят количките си

0
Тъй като множество магазини са афектирани от този феномен, създадохме списък с най-честите причини клиентите да изоставят количките си. Разберете кои са те!