2013-09-27 53 views
18

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ąć .

+0

Czy próbowałeś użyć aliasu? – MasterAM

+0

@MasterAM Tego właśnie brakuje. Dzięki! Alias ​​/ podfolder/var/www/podfolder Opcje + Indeksy AllowOverride Wszystko rozwiązać problem! – ojs

+0

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

Odpowiedz

24

Należy dodać do swojej konfiguracji:

Alias /subfolder /var/www/subfolder 
<Directory /var/www/subfolder> 
    Order allow,deny 
    allow from all 
</Directory> 

i dopasować konfigurację pomiędzy „Katalog” do swoich potrzeb.

Aby uzyskać więcej informacji, patrz Apache documentation.