Mam zainstalowany Joomla na serwerze internetowym z uruchomionym Ubuntu Server 12.04. Folder Joomla znajduje się w/var/www/cms /.Przekierowanie do podfolderu w pliku hosta wirtualnego Apache
Mój plik vhost w/etc/apache2/sites-enabled/default ma następującą zawartość:
<VirtualHost *:80>
ServerName domain.com/
Redirect permanent/https://domain.com/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName domain.com:443
DocumentRoot /var/www/cms
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/cms>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
(...)
</VirtualHost>
w tej chwili, wszystkie żądania do domain.com i cokolwiek wpisane po tym jak domain.com/przykład zostaje skierowany i przetworzony przez Joomla, który przekierowuje do właściwej strony lub zwraca niestandardowy błąd 404. To wszystko działa.
Teraz chciałbym odfiltrować wszystkie żądania, które trafiają do domeny.com/subfolder, zanim zostaną przetworzone przez Joomla i przekierować je do/var/www/subfolder (zamiast mojego katalogu głównego w/var/www/cms /).
Uważam, że plik w/etc/apache2/sites-enabled/default (zobacz wyżej) jest właściwym miejscem do zdefiniowania takiego przekierowania, jednak nie byłem w stanie określić, na jakiej pozycji i jak to osiągnąć .
Czy próbowałeś użyć aliasu? – MasterAM
@MasterAM Tego właśnie brakuje. Dzięki! Alias / podfolder/var/www/podfolder Opcje + Indeksy AllowOverride Wszystko rozwiązać problem! –
ojs
Spróbuj dodać następujące elementy do '.htaccess' w katalogu nadrzędnym powyżej interesującego katalogu:' RedirectMatch ^/foo/$/foo/bar/'lub' RedirectMatch ^/foo/$/bar/baz/'. Zobacz także [Jak uzyskać apache2 do przekierowania do podkatalogu] (http://serverfault.com/q/9992/145545). – jww