Witam
Nie wiem czemu ale na prywatnym serwerze firmy nie działają zasady określone w plikach .htaccess.
zawartość pliku /var/www/html/.htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteCond %{HTTP_HOST} ^/$ [R=301,L]
#RewriteRule ^(.*)$ htt://www.onet.pl/$1 [L]
RewriteRule ^/lol$ /dev/public
</IfModule
Jak widać wcześniej próbowałem przekierować ruch na onet a później napisałem najprostszą zamianę adresów (adres/lol -> adres/dev/public)
Sam moduł rewrite został włączony
#a2enmod rewrite
Module rewrite already enabled
Jest włączony tylko jeden wirtualny host - w katalogu /etc/apache2/sites-enabled/000-default.conf. Jego zawartość ...
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
<Directory /var/www/html>
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
W pliku /etc/apache2/apache2.conf jest podobna sekcja dla /var/www i tam też przestawiłem AllowOverride z None na All
Oczywiście po każdej zmianie plików konfiguracyjnych apacha był restart demona albo przez ...
#service apache2 restart
... albo przez ...
#/etc/init.d/apache2 restart
Pliki .htaccess są interpretowane bo jeżeli wpiszę w pliku /var/www/html/.htaccess głupoty to po przejściu na stronę główną serwera wypluwa błąd, a w logach apacha jest wzmianka że polecenie zawarte w pliku /var/www/html/.htaccess nie może być zinterpretowane.
Niestety ani przekierowanie na onet nie działa (normalnie widać zawartość katalogu html) ani też zakomentowanie 2 linijek i odkomentowanie linijki przekierowania z /lol na /dev/public też nie działa (wpisanie /lol wyrzuca błąd braku strony /lol) - katalog /var/www/html/dev/public zawiera plik index.html