subdomena wirtualnego hosta apache nie działa poprawnie

0

Próbuję skonfigurować poddomenę: api.example.com (exapmle.com zastępuje się moją rzeczywistą nazwą domeny)

Mam już hosty wirtualne skonfigurowane z 2 witrynami: example.com i example.nl Obaj mieli oddzielne katalogi i pracowali poprawnie jako osobne witryny.

Teraz chcę dodać api.example.com z własnym oddzielnym dokumentem. Dodałem plik konfiguracyjny o nazwie: „api.example.com.conf” z tym wewnątrz:

<VirtualHost *:80>
ServerAdmin [email protected]
ServerName api.example.com
ServerAlias www.api.example.com
DocumentRoot /var/www/api.example.com/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.api.example.com [OR]
RewriteCond %{SERVER_NAME} =api.example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

Dodałem folder /var/www/api.example.com/html z przykładem index.html wewnątrz. Dałem folderowi odpowiednie uprawnienia. Następnie włączyłem witrynę za pomocą: „a2ensite api.example.com.conf” i ponownie uruchomiłem apache.

Dodałem nowy rekord do rekordów example.com. Jest to rekord A z api.example.com i przekierowuje do tego samego adresu IP co example.com, ponieważ znajdują się na tym samym serwerze.

Po zrobieniu tego wszystkiego spodziewałem się, że kiedy poszedłem do api.example.com, pokaże mi przykładowy index.html, który stworzyłem, ale nie zrobił tego. Kiedy idę do api.example.com to jest to samo, co gdybym poszedł do example.com.

Jak to zrobić, aby api.example.com miał swój własny katalog główny, który działa poprawnie?

C1rcu1tB04rd
źródło
Czy przeładowałeś Apache po dodaniu tej konfiguracji?
Daniel B
Tak, wczytałem apache,
C1rcu1tB04rd
Czy próbowałeś pominąć reguły przepisywania?
Anaksunaman
Tak, mam i nie pracowałem.
C1rcu1tB04rd

Odpowiedzi:

0

Zmuszam wszystkie moje domeny do https, ale nie mam jeszcze konfiguracji SSL dla mojej nowej subdomeny. Miałem wirtualnego hosta dla http://api.example.com , ale mój serwer nie zezwala na HTTP, więc został przekierowany na https i nie było hosta wirtualnego https://api.example.com po prostu został przekierowany do głównej domeny.

C1rcu1tB04rd
źródło
Cześć C1rcu1tB04rd, sekcja odpowiedzi jest przeznaczona tylko dla odpowiedzi. Proszę edytować pytanie lub użyć komentarzy, aby uzupełnić i usunąć ten.
bummi
Ale to nie jest aktualizacja pytania, to właściwa odpowiedź. „Nie było vhosta api.example.com na *:443
Daniel B