Muszę przekierować wszystkie żądania apache na 80 na tomcat na 8080, z wyjątkiem jednej ścieżki.Błąd Apache ProxyPass
Tak więc, jeśli otrzymasz http://example.com/anything -> tomcat: 8080.
Ale jeśli adres URL jest następujący: http://example.com/site -> serwer Apache powinien działać i nie jest potrzebne przekierowanie.
Obecnie istnieje folder o nazwie site
wewnątrz /var/www/html/
.
To jest mój aktualny plik konfiguracyjny:
site.conf(plik ten zawiera jedynie następujące i znajduje się wewnątrz folderu conf.d)
<LocationMatch "/*">
Allow from all
ProxyPass /site !
ProxyPass http://127.0.0.1:8080
ProxyPassReverse http://127.0.0.1:8080
</LocationMatch>
myślę, że to jest prostą rzeczą do osiągnięcia z Apache, ale próbowałem wszystkiego, co mogłem znaleźć i nadal otrzymuję błąd:
ProxyPass|ProxyPassMatch can not have a path when defined in a location.
Chodzi o to, że strona główna działa na tomcat, ale druga działa na apache (ten, który nazwałem strona w tym pytaniu).
Jeśli ktoś może pomóc, doceniam.
Dzięki!
Update 1 - 09/06/2017
mogę zmusić go do pracy jeśli usunąć LocationMatch
i umieścić ProxyPass
bezpośredni w pliku .conf
:
ProxyPass /site !
ProxyPassReverse /site !
ProxyPass /http://127.0.0.1:8080
ProxyPassReverse /http://127.0.0.1:8080
Ale chciałbym lubię wiedzieć, dlaczego tak jest? Jaki jest wpływ umieszczenia tych dyrektyw poza tagiem LocationMatch
? I, co najważniejsze, dlaczego nie mogę osiągnąć tego samego wyniku za pomocą LocationMatch
?
Ok, rozumiem. Dzięki! Wypróbuję Twoje rozwiązanie za pomocą 'Lokalizacja'. Ale, nie korzystając z "Lokalizacja", jakie są różnice? Ustawienie tych wartości proxy bezpośrednio w pliku jest takie samo jak ustawienie dla 'VirtualHost' lub' Directory'? Czy są jakieś problemy z tym podejściem? – Luiz
Nie jestem pewien, czy jest duża różnica, używając 'Location' zamiast po prostu używając' ProxyPass' na najwyższym poziomie pliku konfiguracyjnego, jeśli używasz bloku 'Location' do ustawienia' ProxyPass'. Sądzę, że gdybyś robił więcej w sekcji 'Location' niż po prostu' ProxyPass', możesz chcieć trzymać razem powiązane elementy konfiguracji. – larsks