Apache 2.4.10 VirtualHost 색인 페이지가 표시되지 않음

Apache 2.4.10 VirtualHost 색인 페이지가 표시되지 않음

내 문제에 대한 설명을 직접 보려면 다음을 참조하세요.문제부분.

문맥:

XUbuntu 14.10 및 Apache 2.4.10을 실행합니다.

저는 Apache를 처음 접했기 때문에 간단한 VH를 설정하려고 합니다. 어느 정도 성공했지만 여전히 문제가 있습니다. 문서를 읽었지만 내 구성에 어떤 문제가 있는지 찾을 수 없습니다. 두 개의 가상 호스트를 구성하고 싶습니다.myname.com그리고펭귄닷컴.

구성

다음은 현재 구성에 대한 간단한 설명(완전하지는 않음)입니다.

/etc/apache2/apache2.conf

<Directory />
        Options FollowSymLinks
        AllowOverride None
        Require all denied
</Directory>

<Directory /usr/share>
        AllowOverride None
        Require all granted
</Directory>

<Directory /var/www/>
        Options +Indexes 
        Options FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>


<Directory /var/www/html/flashlight/>
        AllowOverride All
</Directory>

<FilesMatch "^\.ht">
        Require all denied
</FilesMatch>

# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf

# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf

/etc/apache2/sites-enabled/000-default.conf

<VirtualHost *:80>
    ServerName www.example.com
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    <Directory /var/www/>
        AuthName "Mon domaine"
        AuthType Basic
        AuthUserFile /etc/apache2/users.passwd
        Options +Indexes 
        Options FollowSymLinks
        AllowOverride None
        Require valid-user
    </Directory>
</VirtualHost>

/etc/apache2/sites-enabled/myname.conf

<VirtualHost 127.0.0.2:80>
    ServerName myname.com
    ServerAlias www.myname.com
    DocumentRoot /var/www/html/myname

    <Directory /var/www/html/myname>
        Options +Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

/etc/apache2/sites-enabled/penguin.conf

<VirtualHost 127.0.0.3:80>
    ServerName penguin.com
    ServerAlias www.penguin.com
    DocumentRoot /var/www/html/penguin

    <Directory /var/www/html/penguin>
        Options +Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

을 사용하여 Apache 문서에 설명된 대로 두 가상 호스트가 모두 활성화되었습니다 a2ensite. Apache가 /etc/init.d/apache2 graceful. 그리고 가상 호스트에 있는지 확인하기 위해 간단한 파일을 /var/www/html/penguin만들었 /var/www/html/myname습니다 .index.html

/etc/hosts마지막으로 다음을 포함하도록 변경했습니다 .

127.0.0.1       localhost
127.0.0.2       myname.com
127.0.0.3       penguin.com

구성을 확인하기 위해 다음을 실행 apachectl -S하면 볼 수 있습니다.

VirtualHost configuration:
127.0.0.3:80           penguin.com (/etc/apache2/sites-enabled/penguin.conf:1)
127.0.0.2:80           myname.com (/etc/apache2/sites-enabled/myname.conf:1)
*:80                   www.example.com (/etc/apache2/sites-enabled/000-default.conf:1)

문제

이제 두 개의 가상 호스트가 구성되었으므로 해당 호스트에 액세스하려고 합니다. penguin.com내 브라우저(Firefox)에서 액세스하려고 하면 /var/www/html/index.html 대신 가 표시됩니다 /var/www/html/penguin/index.html. penguin.com/index.html올바른 색인 페이지를 보려면 명시적으로 작성해야 합니다 .

그런데 접속하면 myname.com올바른 인덱스가 제공됩니다!?

게다가 크롬으로 해당 사이트에 접속하면 이런 문제가 발생하지 않고 바로 올바른 색인 페이지가 보입니다.

내 Apache 구성에 문제가 있습니까? 아니면 Firefox에만 관련되어 있다고 생각하시나요(아마도 /etc/hosts제대로 읽히지 않을 수도 있습니다)?

편집하다

IP(127.0.0.2/3)를 통해 페이지에 액세스할 때 Firefox에서도 동일한 문제가 발생한다는 사실을 언급하는 것을 잊어버렸습니다(127.0.0.2만 작동).

을 사용하면 wget예상대로 파일을 얻을 수 있습니다. 그래서 나는 그것이 Apache 구성이 아닌 브라우저와 관련이 있을 수 있다고 생각합니다.

편집2

문제를 "해결"하기 위해 /etc/hosts의 루프백 주소를 로컬 IP 주소로 바꿨습니다. 또한 <VirtualHost *:80>두 파일 모두에서 VirtualHost 선언을 대체했습니다. 지금은 잘 작동합니다!

그래도 전체 루프백 IP 주소가 주어졌을 때 Firefox가 올바른 색인을 얻을 수 없는 이유가 여전히 궁금합니다.

글이 길어져서 죄송합니다!

감사합니다

답변1

이 경우 Firefox는 /etc/hosts를 이름 확인을 위한 마지막 옵션으로 확인합니다.

이 해결 방법을 시도해 볼 수 있습니다.

  1. Firefox를 열고 about:configURL을 입력하세요.
  2. 검색 keyword.enabled하여 False로 설정하세요.
  3. hosts/etc/nsswitch.conf에서 첫 번째 옵션이 있는 항목을 확인하십시오 files.

관련 정보