Ubuntu 12.04를 사용하여“이름 기반”가상 호스트를 어떻게 설정합니까?
https://help.ubuntu.com/12.04/serverguide/httpd.html#http-configuration에 제공된 지침을 따랐습니다 .
나는 다음을 수행했다 ...
cp default newsite
- newsite에서 "/ var / www"를 "/ var / www / newsite"로 교체
- “ServerName newsite.example.com”을 newsite에 추가하십시오
조사한 결과을 사용하여 기본 사이트를 비활성화해야한다는 블로그 항목이 발견되었습니다 a2dissite default
. 내가 그렇게 한 후에 효과가있었습니다. 그 맞습니까? 이것은 Ubuntu 서버 안내서에서 언급되지 않았습니다. 가이드는 또한이 라인을 포함 ...
"기본 가상 호스트에는 ServerName 지시문이 지정되어 있지 않으므로 다른 가상 호스트의 ServerName 지시문과 일치하지 않는 모든 요청에 응답합니다."
기본 사이트와 다른 사이트가 공존 할 수 있음을 의미하는 것 같습니다.
12.04 Server를 새로 설치하고 조정할 때마다 아파치 구성을 다시로드했습니다.
요약하면 ... / etc / apache2 / sites-available (ServerName 지시문이 추가 된 "기본"파일의 변경된 사본) 아래에 새 파일을 추가하고 / etc / apache2 / sites-enabled 아래의 해당 심볼릭 링크는 다음과 같습니다. 새 사이트가 작동하려면 기본 사이트 심볼릭 링크를 비활성화하거나 이름을 바꿔야합니까? 아래의 문서와 하나의 대답은 그렇게 할 필요가 없다고 추측하는 것 같습니다. 그렇다면 내가 잘못한 것은 무엇입니까? newsite.example.com에 액세스하려고 할 때 아래 구성을 사용하여 기본 사이트를 얻습니다.
/ etc / apache2 / sites-available $ 고양이 기본값
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
/ etc / apache2 / sites-available $ cat newsite
<VirtualHost *:80>
DocumentRoot /var/www/newsite
ServerName newsite.example.com
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/newsite/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
/ etc / apache2 / sites-enabled # ls -l
root@sandbox:/etc/apache2/sites-enabled# ls -l
total 0
lrwxrwxrwx 1 root root 26 Mar 18 09:56 000-default -> ../sites-available/default
lrwxrwxrwx 1 root root 26 Mar 7 13:36 newsite -> ../sites-available/newsite
sites-available
내용이 명확하지 않습니다sites-enabled
. 아파치가 실제로로드 하는cat
파일sites-enabled
이므로 파일을 제안 합니다.