Странности с показом субдомена Apache из под Windows, azlk, 21-Фев-10, 00:10 [смотреть все]Ситуация такая: есть сервер в стойке на mastak.ru, у него один айпи адрес, на сервере установлена Ubuntu. Там крутится сайт infostat.info. Мне понадобилось выложить свои файлы, создал VirtualHost tao.infostat.info. Но когда я его подключил (ссылку в /etc/apache2/conf.d+restart apache2) начались смешные вещи: из под *никсов любых все видится, как было задумано, а из под виндовс у кого-то все ок, а у кого-то вместо infostat.info показывает tao.infostat.info. Что не есть гуд, потому что у всех, кто связан с этим проектом, стоит windows и почти у всех них виден этот субдомен вместо основного сайта. Один товарищ-сисадмин предположил, что косяк где-то в ДНС, но ДНС-ом управляет сам мастак, поэтому я там ничего исправить не смогу. Почему так было организовано, я не знаю, т.к. договаривался о колокейшн человек, которого уже нет. Да и у меня нет подозрений на ДНС, потому что nslookup показывает наш айпишник 217.199.218.97 и для infostat.info и для tao.infostat.info (как и должно быть). Мне кажется, что если бы ошибка была в настройках Апача, так он бы всем неправильно и показывал, но такая проблема почему-то возникает именно у пользователей винды! Не пойму, где искать косяк?... На всякий случай, настройки Апача:default: NameVirtualHost infostat.info:80 <VirtualHost infostat.info:80> ServerAdmin webmaster@infostat.info ServerName infostat.info:80 RewriteEngine On RewriteOptions Inherit RewriteCond %{HTTP_HOST} !^www.infostat.info$ RewriteCond %{HTTP_HOST} ^((.*)\.)infostat.info$ RewriteRule ^/(.*) /%2/$1 DocumentRoot /var/www/site <Directory /> Options FollowSymLinks AllowOverride None Order Deny,Allow Deny from all </Directory> <Directory /var/www/site> Options Indexes FollowSymLinks MultiViews AllowOverride None RewriteEngine On 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 /var/log/apache2/apache.error.log LogLevel debug CustomLog /var/log/apache2/apache.access.log "combined" ServerSignature On 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> ErrorDocument 404 "Page not found" </VirtualHost> tao: <VirtualHost tao.infostat.info:80> ServerName tao.infostat.info:80 DocumentRoot /var/www/tao <Directory /var/www/tao> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/tao.infostat.error.log LogLevel warn CustomLog /var/log/apache2/tao.infostat.access.log "combined" ServerSignature On ErrorDocument 404 "Page not found" </VirtualHost>
|
- Странности с показом субдомена Apache из под Windows, Square, 12:20 , 21-Фев-10 (1)
>Там крутится сайт infostat.info. Мне понадобилось выложить свои файлы, создал VirtualHost tao.infostat.info. Описанная проблема не обнаружена. все открывается как и положено. Из под виндовс.
- Странности с показом субдомена Apache из под Windows, azlk, 18:36 , 21-Фев-10 (2)
>>Там крутится сайт infostat.info. Мне понадобилось выложить свои файлы, создал VirtualHost tao.infostat.info. > >Описанная проблема не обнаружена. все открывается как и положено. Из под виндовс. >Вот я и говорю - через раз... У кого-то открывается, а у кого-то - нет, независимо от версии установленной винды - хоть ХР хоть w2k3. Понять бы в чем дело..
- Странности с показом субдомена Apache из под Windows, JohnProfic, 19:13 , 21-Фев-10 (3)
>Вот я и говорю - через раз... У кого-то открывается, а у >кого-то - нет, независимо от версии установленной винды - хоть ХР >хоть w2k3. >Понять бы в чем дело.. [telepat=1] www.infostat.info != infostat.info c точки зрения конфигурации апача. Тот кто идет на www.infostat.info попадает на виртуальный хост по-умолчанию, который для апача является последним определенным. [/telepat]
- Странности с показом субдомена Apache из под Windows, Square, 20:19 , 21-Фев-10 (4)
>>Вот я и говорю - через раз... У кого-то открывается, а у >>кого-то - нет, независимо от версии установленной винды - хоть ХР >>хоть w2k3. >>Понять бы в чем дело.. > >[telepat=1] >www.infostat.info != infostat.info c точки зрения конфигурации апача. Тот кто идет на >www.infostat.info попадает на виртуальный хост по-умолчанию, который для апача является последним >определенным. >[/telepat] Как хорошо что телепаты вернулись из отпуска.. автор то про www.infostat.info ничего не говорил... Да, действительно, так оно и будет, ведь www.infostat.info не описан в виртуальных хостах...
- Странности с показом субдомена Apache из под Windows, ACCA, 23:48 , 21-Фев-10 (6)
>[telepat=1] >www.infostat.info != infostat.info c точки зрения конфигурации апача. Тот кто идет на >www.infostat.info попадает на виртуальный хост по-умолчанию, который для апача является последним >определенным. >[/telepat] Ещё добавлю - на http://www.infostat.info попадёт юзер IE, который набрал в адресной строке `infostat.info'. Тот, кто набрал `http://infostat.info', попадёт куда действительно хотел. Дружелюбная к пользователю операционная система с улучшенным алгоритмом ресолвинга, ненавязчиво исправляющая ошибки ввода.
- Странности с показом субдомена Apache из под Windows, azlk, 03:33 , 22-Фев-10 (7)
>[telepat=1] >www.infostat.info != infostat.info c точки зрения конфигурации апача. Тот кто идет на >www.infostat.info попадает на виртуальный хост по-умолчанию, который для апача является последним >определенным. >[/telepat] Вы правы, как и ACCA и Square... Мне в голову не пришло набрать www.infostat.info, теперь и я с линукса попал туда же (куда не надо). Почему в голову не пришло? Да просто мне казалось, что директива Rewrite УЖЕ перенаправит пользователей с www. на просто http://, я что-то проглядел?...
- Странности с показом субдомена Apache из под Windows, ACCA, 05:13 , 22-Фев-10 (8)
>[оверквотинг удален] >>www.infostat.info != infostat.info c точки зрения конфигурации апача. Тот кто идет на >>www.infostat.info попадает на виртуальный хост по-умолчанию, который для апача является последним >>определенным. >>[/telepat] > >Вы правы, как и ACCA и Square... Мне в голову не пришло >набрать www.infostat.info, теперь и я с линукса попал туда же (куда >не надо). Почему в голову не пришло? Да просто мне казалось, >что директива Rewrite УЖЕ перенаправит пользователей с www. на просто http://, >я что-то проглядел?... Сущую мелочь - область действия. Чтобы выполнить rewire, нужно каким-то хером попасть в infostat.info в то время, как ты попадаешь в последний определённый VirtualHost. Конечно, можно переставить местами определения VirtualHost - получишь изящные подводные грабли для следующего раза. Определи ServerAlias и не надейся на неочевидные побочные эффекты.
- Странности с показом субдомена Apache из под Windows, azlk, 07:17 , 22-Фев-10 (10)
>[оверквотинг удален] >>что директива Rewrite УЖЕ перенаправит пользователей с www. на просто http://, >>я что-то проглядел?... > >Сущую мелочь - область действия. > >Чтобы выполнить rewire, нужно каким-то хером попасть в infostat.info в то время, >как ты попадаешь в последний определённый VirtualHost. Конечно, можно переставить местами >определения VirtualHost - получишь изящные подводные грабли для следующего раза. > >Определи ServerAlias и не надейся на неочевидные побочные эффекты. Понял ошибку с Rewrit-ом, спасибо. Добавил сервералиас, теперь стало вот так: NameVirtualHost www.infostat.info:80 <VirtualHost www.infostat.info:80> UseCanonicalName On (это я не совсем понимаю, нужно мне или нет? но вроде не мешает..пока) ServerAdmin webmaster@infostat.info ServerName infostat.info ServerAlias www.infostat.info RewriteEngine On RewriteOptions Inherit RewriteCond %{HTTP_HOST} !^www.infostat.info$ RewriteCond %{HTTP_HOST} ^((.*)\.)infostat.info$ RewriteRule ^/(.*) /%2/$1 ....... </VirtualHost> и для второго вирт.хоста: <VirtualHost tao.infostat.info:80> UseCanonicalName Off ServerName tao.infostat.info ServerAlias tao.infostat.info RewriteEngine On RewriteOptions Inherit RewriteCond %{HTTP_HOST} !^www.tao.infostat.info$ RewriteCond %{HTTP_HOST} ^((.*)\.)tao.infostat.info$ RewriteRule ^/(.*) /%2/$1 ...... </VirtualHost> После такой рокировки и по www.infostat.info и без www открывается то , что надо. Но вот , что меня смущает: парсинг конфига показывает, что default-овым сервером Apache считает по-прежнему tao.infostat.info: # apache2ctl -S 217.199.218.97:80 is a NameVirtualHost default server tao.infostat.info (/etc/apache2/conf.d/tao:1) <=== !!! зараза... port 80 namevhost tao.infostat.info (/etc/apache2/conf.d/tao:1) port 80 namevhost infostat.info (/etc/apache2/sites-enabled/000-default:2) Не могу понять, как же мне его отодвинуть вторым, а основным чтобы стал просто infostat.info? Безумное предположение: а может быть такое, что сначала считываются конфиги из /etc/apache2/conf.d, а уже затем из /etc/apache2/sites-enabled??.. Дело в том, что реальные конфиги лежат в /etc/apache2/sites-available, ссылка на default сделана в /etc/apache2/sites-enabled, а ссылка с tao сделана в /etc/apache2/conf.d Может, я ошибаюсь, но у меня такое создалось ощущение, что апач сначала читает из /etc/apache2/conf.d, а потом уже из /etc/apache2/sites-enabled?.. Кстати, там еще и 3 SSL виртуальных хоста, так вывод парсинга похоже, подтверждает мои предположения... Боюсь, как вы написали, скрытых граблей, которые вылезут в самый неподходящий момент, как обычно...
- Странности с показом субдомена Apache из под Windows, Square, 20:20 , 21-Фев-10 (5)
>>>Там крутится сайт infostat.info. Мне понадобилось выложить свои файлы, создал VirtualHost tao.infostat.info. >> >>Описанная проблема не обнаружена. все открывается как и положено. Из под виндовс. >> > >Вот я и говорю - через раз... Чушь... Впрочем как уже ответили- проблема в вашей невнимательности. Как к настройке апача так и к тому что вы проверяете.
- Странности с показом субдомена Apache из под Windows, azlk, 05:20 , 22-Фев-10 (9)
>>>>Там крутится сайт infostat.info. Мне понадобилось выложить свои файлы, создал VirtualHost tao.infostat.info. >>> >>>Описанная проблема не обнаружена. все открывается как и положено. Из под виндовс. >>> >> >>Вот я и говорю - через раз... > >Чушь... Впрочем как уже ответили- проблема в вашей невнимательности. Как к >настройке апача так и к тому что вы проверяете. Не будьте так категоричны, скорее, моя проблема - в нехватке знаний, с чем я и обратился к вам... Хотя, невнимательность наверное, тоже присутствует. Только так я до конца и не понял, что же конкретно у меня не так - Rewrite неправильный? И как все-таки, сделать, чтобы infostat.info стал первым (default) вируальным хостом? Вообще, настройки апача меня иногда загоняют в тупик - например, вирт.хост пришлось назвать tao.infostat.info только потому, что имя dao.infostat.info он категорически отказывается показывать вообще...с чем это связано я просто загнался выяснять - нет хоста и всё. В логах - пусто. Ни слова. Переименовываешь в tao/zao/wao/что-угодно - появился. Такое ощущение, как будто слово 'dao' "зарезервировано" в системе...понимаю, что выглядит, как чушь, но факт остается фактом...
- Странности с показом субдомена Apache из под Windows, azlk, 07:55 , 22-Фев-10 (11)
>Вообще, настройки апача меня иногда загоняют в тупик - например, вирт.хост пришлось >назвать tao.infostat.info только потому, что имя dao.infostat.info он категорически отказывается показывать >вообще...с чем это связано я просто загнался выяснять - нет хоста >и всё. В логах - пусто. Ни слова. Переименовываешь в tao/zao/wao/что-угодно >- появился. Такое ощущение, как будто слово 'dao' "зарезервировано" в системе...понимаю, >что выглядит, как чушь, но факт остается фактом... Единственная наводка, которую я не знаю как использовать, вот это: #apache2ctl -S [Mon Feb 22 07:24:26 2010] [error] (EAI 2)Name or service not known: Could not resolve host name dao.infostat.info -- ignoring! Любое другое имя - пожалуйста. Буква "d" не нравится апачу?...
|