Я пытаюсь настроить поддомен: api.example.com (exapmle.com заменяется моим фактическим доменным именем)

У меня уже были настроены виртуальные хосты с двумя сайтами: example.com и example.nl, у них обоих были отдельные каталоги, и где они работали правильно как отдельные сайты.

Теперь я хочу добавить api.example.com также со своим отдельным documentroot. Я добавил конфигурационный файл с именем: "api.example.com.conf" с этим внутри:

<VirtualHost *:80>
ServerAdmin admin@api.example.com
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>

Я добавил папку /var/www/api.example.com/html с примером index.html внутри. Я дал папке правильные разрешения. После этого я включил сайт с помощью: "a2ensite api.example.com.conf" и перезапустил apache.

Я добавил новую запись в записи example.com. Это запись A с api.example.com, и она перенаправляет на тот же ip, что и example.com, потому что они находятся на одном сервере.

После всего этого я ожидал, что когда я зайду на api.example.com, он покажет мне созданный мной пример index.html, но этого не произошло. Когда я захожу на api.example.com, это то же самое, что если бы я заходил на example.com.

Как мне сделать так, чтобы api.example.com имел собственный корень документа, который работает правильно?

1 ответ1

0

Я перевожу все мои домены на https, но у меня еще не было настройки SSL для моего нового поддоменов. У меня был виртуальный хост для http://api.example.com, но мой сервер не разрешает HTTP, поэтому он перенаправлен на https и потому что не было виртуального хоста для https://api.example.com, он просто перенаправлен на основной домен.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .