Budując serwis interentowy zazwyczaj nie zakończysz swojego dzieła w postaci jednej stronki. Serwisy rozrastają się, powstają wyspecjalizowane podserwisy itp. Dlatego warto rozważyć, czy instalując np drupala od razu nie umieścić go w podkatalogu.
Mój dostawca hostingu pozwala mi na takie cuda, jeżeli również u niego prowadzę DNS. Niestety mój DNS znajduje się na zewnątrz i uznałem jego przeniesienie za zbyt kłopotliwe. W takim przypadku jestem zdany na plik .htaccess wraz z zasadami przepisywania adresów. W katalogu głównym utworzyłem plik .htaccess o mniej więcej takiej zawartości:
RewriteEngine On RewriteCond %{HTTP_HOST} ^(www\.)?moja_domena\.pl$ [NC] RewriteCond %{REQUEST_FILENAME} !/moj_katalog/ RewriteRule ^(.*)$ /moj_katalog/$1 [L]
W moim przypadku wystarczył ten plik, a odwołanie do adresu www.moja_domena.pl przenosiło mnie do drupala zainstalowanego w moj_katalog.
Jednak kiedy przechodziłem klikając w linki serwisu na kolejne podstrony serwisu okazało się, że w pasku przeglądarki pojawiał się dość dziwny adres:
I to można w drupalu zmienić. Otóż w pliku sites/default/settings.php można odkomentować linijkę:
$base_url = 'http://www.moja_domena.pl';
U mnie plik posiadał uprawnienia tylko do odczytu musiałem więc wykonać jeszcze zmianę uprawnień
chmod u+w settings.php
Efekt – taki jak należało. Drupal jest w podkatalogu, a użytkownicy tego nie widzą.
Pamiętaj aby po wszystkim odebrać sobie uprawnienia do zapisu:
chmod u-w settings.php
Chcesz wiedzieć więcej? Czytaj: | |||
Pomocne były też: