Назад | Перейти на главную страницу

Apache работает с доменом, но не с поддоменом

Я могу настроить такой прокси

NameVirtualHost *:80

<VirtualHost *:80>
   ServerName example.ca

   ProxyPreserveHost On
   ProxyVia Full
   #ProxyRequests off
   # setup the proxy
   <Proxy *>
      Order allow,deny
      Allow from all
   </Proxy>
   ProxyPass        / http://10.0.0.0:123/
   ProxyPassReverse / http://10.0.0.0:123/
</VirtualHost>

Но не тогда, когда я включаю такие субдомены

NameVirtualHost *:80

<VirtualHost *:80>
   ServerName dev.example.ca

   ProxyPreserveHost On
   ProxyVia Full
   #ProxyRequests off
   # setup the proxy
   <Proxy *>
      Order allow,deny
      Allow from all
   </Proxy>
   ProxyPass        / http://10.0.0.0:123/
   ProxyPassReverse / http://10.0.0.0:123/
   ErrorLog logs/vhost-error_log
   CustomLog logs/vhost-access_log common
</VirtualHost>

Я просмотрел всю сеть, и вышеприведенное решение должно работать, но это не так. Любые идеи, что не так.

РЕДАКТИРОВАТЬ Согласно JoeT's запросов, я обновил приведенный выше код, чтобы включить журналы, которые показаны ниже (vhost_error_log был пуст)

vhost-access_log

xxx.xxx.xxx.xxx - - [26/Aug/2015:18:09:58 -0700] "GET / HTTP/1.1" 200 4607
xxx.xxx.xxx.xxx - - [26/Aug/2015:18:09:58 -0700] "GET /assets/application-ffeeed35892b38ff9bfa135564fb0830.css HTTP/1.1" 304 256
xxx.xxx.xxx.xxx - - [26/Aug/2015:18:09:58 -0700] "GET /assets/print-47fe51cdf70398e5e54b544e0f5cc718.css HTTP/1.1" 304 255
xxx.xxx.xxx.xxx - - [26/Aug/2015:18:09:58 -0700] "GET /assets/application-3302fd299e1a3e701974f594a4a76c56.js HTTP/1.1" 304 257
xxx.xxx.xxx.xxx - - [26/Aug/2015:18:09:58 -0700] "GET /assets/logo-ca207549507c811d027110077cf86e90.svg HTTP/1.1" 304 255
xxx.xxx.xxx.xxx - - [26/Aug/2015:18:09:58 -0700] "GET /assets/icon-search-1aee2102ac9ef7c077acce219d346074.png HTTP/1.1" 304 254
xxx.xxx.xxx.xxx - - [26/Aug/2015:18:09:58 -0700] "GET /assets/jquery-ui/ui-bg_flat_75_ffffff_40x100-d20cf782ea2d212335fa15f2ecb5e412.png HTTP/1.1" 304 254
xxx.xxx.xxx.xxx - - [26/Aug/2015:18:09:58 -0700] "GET /?limit=20&offset=0 HTTP/1.1" 200 3394

Я исправил решение не через сервер apache, а через своего провайдера домена.

Вам необходимо войти в свою учетную запись и создать поддомены, т.е.

  • john.example.com
  • jane.example.com
  • francis.rutherford.jr.the.third.example.com

Раньше я настраивал только локальный сервер apache, и мой /etc/hosts файл улавливал запрос на example.ca и john.example.ca, и автоматически перенаправляя его на 192.0.0.123