Używam apache2 na platformie Debian etch, z wieloma wirtualnymi hostami.
Chcę przekierować, aby http://git.example.com
przejść dohttp://git.example.com/git/
Powinno to być naprawdę proste, ale Google nie całkiem go wycina. Próbowałem przekierować i przepisać rzeczy, które wydają się nie robić tego, co chcę ...
apache-2.2
.htaccess
redirect
Hamish Downer
źródło
źródło
Odpowiedzi:
Poczuj się trochę głupio - trochę więcej googlingów znalazło odpowiedź, której szukałem:
Zasadniczo przekierowanie katalogu głównego i tylko katalogu głównego.
Ten kod może zrobić w
.htaccess
pliku (jest do tego znacznik, więc zakładam, że jest to oryginalny przypadek użycia). Ale jeśli możesz edytować, konfiguracja głównego serwera Apache, a następnie umieść ją w sekcji witryny sieci Web prawdopodobnie w<VirtualHost>
sekcji.Dokumenty dla RedirectMatch mówią, że kontekstem może być „konfiguracja serwera, wirtualny host, katalog, .htaccess”.
źródło
https://example.com/git/
), aby to zadziałało. Dziwne.Masz tam prawidłową odpowiedź z przekierowaniem. Musisz być ostrożny przy przekierowywaniu wszystkiego w inne miejsce, ponieważ możesz tam uzyskać przekierowania rekurencyjne. Dzieje się tak, jeśli chcesz założyć stronę konserwacji.
źródło
Redirect / /git/
powoduje rekurencyjne fajerwerki.Możesz użyć dyrektywy Przekierowanie.
źródło
Przyjęta odpowiedź rozwiązała mój problem, ale stwierdziłem również, że muszę dodać przekierowanie 404 dla nieistniejących stron - moja sytuacja polega na tym, że instalacja OwnCloud znajduje się jeden poziom poniżej katalogu głównego ( https://example.com/owncloud ) .
To działało dla mnie, aby wysłać wszystko do mojego podkatalogu:
źródło