Разрешение имени конфигурации сервера Apache (именование виртуального хоста + безопасность)
Я только что установил минимальный (надеюсь безопасный? - комментарии приветствуется) веб-сайт apache, используя следующий файл конфигурации:
<VirtualHost *:80>
ServerName foobar.com
ServerAlias www.foobar.com
ServerAdmin webmaster@foobar.com
DocumentRoot /path/to/websites/foobar/web
DirectoryIndex index.php
# CustomLog with format nickname
LogFormat "%h %l %u %t \"%r\" %>s %b" common
CustomLog "|/usr/bin/cronolog /var/log/apache2/%Y%m.foobar.access.log" common
LogLevel notice
ErrorLog "|/usr/bin/cronolog /var/log/apache2/%Y%m.foobar.errors.log"
<Directory />
AllowOverride None
Order Deny,Allow
Deny from all
</Directory>
<Directory /path/to/websites/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Я могу получить доступ к веб-сайту с помощью www.foobar.com, однако, когда я набираю foobar.com, я получаю сообщение об ошибке "Сервер не найден" - почему это так?
Мой второй вопрос касается последствий директивы для безопасности:
<Directory /path/to/websites/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
в конфигурации выше. Что именно он делает, и нужно ли это? Исходя из моего (весьма ограниченного) понимания файлов конфигурации Apache, это означает, что любой сможет получить доступ (написать в?) К папке /path/to/ sites/. Правильно ли мое понимание? - и если да, то как это не является угрозой безопасности?
1 ответ
Что касается вопроса 1, является ли DNS для @ (т. Е. Foobar.com) определенно указывающим на тот же сайт.
1) Проверьте свои записи DNS. 2) Если вы пингуете их, разрешает ли он тот же IP? 3) Ваши экземпляры apache говорят, что сервер не найден?