2015-02-22 4 views
0

Я настроил DNSMasq для работы на локальном тестовом сервере OSX Yosemite с родным Apache2, родным PHP5 и homebrew MySQL и DNSMasq. Теперь все работает, но с текущей настройкой DNS я могу получить доступ только к PHPMyAdmin в своей конфигурации для хоста, используя 127.0.0.1, и то же самое касается каждой установки WordPress. Хост должен быть 127.0.0.1. Localhost больше не работает для доступа к моему локальному хосту.Localhost ведет к 404 с настройкой DNSMasq и пользовательским Vhost

Вот некоторые из конфигураций у меня есть:

/etc/hosts:

## 
# Host Database 
# 
# localhost is used to configure the loopback interface 
# when the system is booting. Do not change this entry. 
## 
127.0.0.1 localhost 
255.255.255.255 broadcasthost 
::1    localhost 

Резольвер /etc/resolver/dev:

nameserver 127.0.0.1 

В /usr/local/etc/dnsmasq.conf я добавил:

listen-address=127.0.0.1 
address=/dev/127.0.0.1 

Теперь, когда я загрузить локальный или http://localhost я получаю 404:

::1 - - [22/Feb/2015:08:12:33 +0300] "GET/HTTP/1.1" 404 198 

Pinging работает просто отлично:

ping localhost 
PING localhost (127.0.0.1): 56 data bytes 
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.050 ms 
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.106 ms 
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.116 ms 
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.113 ms 
^C 
--- localhost ping statistics --- 
4 packets transmitted, 4 packets received, 0.0% packet loss 
round-trip min/avg/max/stddev = 0.050/0.096/0.116/0.027 ms 

И мой VirtualHost в /private/etc/apache2/extra/httpd-vhosts.conf

<Virtualhost *:80> 
VirtualDocumentRoot "/Users/me/webdesign/%1" 
ServerName vhosts.dev 
ServerAlias *.dev 
UseCanonicalName Off 
LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon 
ErrorLog "/Users/me/webdesign/vhosts-error_log" 
<Directory "/Users/me/webdesign/*"> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride All 
    Order allow,deny 
    Allow from all 
</Directory> 
</Virtualhost> 

В это /etc/apache2/httpd.conf I добавили в конец, чтобы остановить ошибку при запуске Apache и заставить PHPMYAdmin работать на localhost.

ServerName localhost 
Alias /phpmyadmin /usr/local/share/phpmyadmin 
<Directory /usr/local/share/phpmyadmin/> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride All 
    <IfModule mod_authz_core.c> 
     Require all granted 
    </IfModule> 
    <IfModule !mod_authz_core.c> 
     Order allow,deny 
     Allow from all 
    </IfModule> 
</Directory> 

И когда я бегу scutil я вижу

scutil --dns 
DNS configuration 

resolver #1 
    search domain[0] : Home 
    nameserver[0] : 192.168.1.1 
    if_index : 4 (en1) 
    flags : Request A records 
    reach : Reachable,Directly Reachable Address 

resolver #2 
    domain : dev 
    nameserver[0] : 127.0.0.1 
    flags : Request A records, Request AAAA records 
    reach : Reachable,Local Address 

DNS configuration (for scoped queries) 

resolver #1 
    search domain[0] : Home 
    nameserver[0] : 192.168.1.1 
    if_index : 4 (en1) 
    flags : Scoped, Request A records 
    reach : Reachable,Directly Reachable Address 

Любые идеи, как я могу сделать LOCALHOST работу снова?

ответ

0

Прочтите here, что при добавлении нового DocumentRoot вы теряете старый, используемый localhost. Поэтому я добавил

<VirtualHost *:80> 
ServerName localhost 
DocumentRoot /Library/WebServer/Documents/ 
</VirtualHost> 

показать это в обратном порядке. Теперь localhost работает снова. Тем не менее, для сайтов, обслуживаемых в .dev 127.0.0.1, все еще необходимо.

 Смежные вопросы

  • Нет связанных вопросов^_^