WIldcard SSL 하위 도메인이 올바른 DocumentRoot를 가리키지 않음

WIldcard SSL 하위 도메인이 올바른 DocumentRoot를 가리키지 않음

Apache 서버에 와일드카드 SSL이 설치되어 있습니다. 아래 코드 조각을 사용하면 다음이 작동합니다.

http://test.com (points to /var/www/html)
https://test.com  (points to /var/www/html)
http://s1.test.com  (points to /var/www/s1)

하지만https://s1.test.com작동하지 않습니다. /var/www/s1이 아닌 /var/www/html을 가리킵니다. 자체 디렉토리를 가리키도록 하려면 어떻게 해야 합니까?

<VirtualHost *:443>
 DocumentRoot "/var/www/html"
 ServerAlias test.com *.test.com
 ServerName *.test.com
 SSLEngine on
 SSLCertificateFile /home/test/STAR_test_com.crt
 SSLCertificateKeyFile /home/test/test.key
 SSLCertificateChainFile /home/test/PositiveSSL.ca-bundle
</VirtualHost>
<VirtualHost *:443>
 ServerAlias s1.test.com *.s1.test.com
 ServerName s1.test.com
 DocumentRoot "/var/www/s1"
 SSLEngine on
 SSLCertificateFile /home/test/STAR_test_com.crt
 SSLCertificateKeyFile /home/test/test.key
 SSLCertificateChainFile /home/test/PositiveSSL.ca-bundle
</VirtualHost>
NameVirtualHost *:80
<VirtualHost *:80>
 ServerName s1.test.com
 ServerAlias s1.test.com
 DocumentRoot "/var/www/s1/"
</VirtualHost>
<VirtualHost *:80>
 ServerName www.test.com
 ServerAlias test.com
 DocumentRoot "/var/www/html/"
</VirtualHost>

감사해요!

답변1

또한 필요합니다 NameVirtualHost *:443.

답변2

아마도 첫 번째 가상 호스트의 와일드카드 레코드일 것입니다.

ServerAlias test.com *.test.com

s1.test.com도 포함되어 있으므로 s1.test.com을 요청하면 구성의 첫 번째 블록이 적용됩니다. 와일드카드를 제거하거나 s1.test.com을 구성 파일의 첫 번째 항목으로 만드세요.

관련 정보