На одном апаче1 два виртуальных сервера на разных портах

kruzer25

Как в апаче сделать сабж?
Кусок конфига с определением виртуальных хостов:
NameVirtualHost *:81
NameVirtualHost *:84
<VirtualHost *:81>
Port 81
ScriptAlias /phpbin/ "c:/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/phpbin/php-cgi.exe"
SetEnv PHPRC C:/php
</VirtualHost>
<VirtualHost *:84>
Port 84
ScriptAlias /phpbin/ "c:/php4/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/phpbin/php-cgi.exe"
SetEnv PHPRC C:/php4
</VirtualHost>

Но на директивы Port внутри определений хостов он внимания не обращает... смотрит только на глобальную, если она не определена - работает на 80 порту, если определна - на том, который определён... а на нескольких определить нельзя - пробовал и Port 81 84 (вообще апач незапускается и Port 81; Port 84 - запускается, и работает только на 84 порту...

skvoria

А чо Listen говорит?
Listen 81
Listen 82

kruzer25

Спасибо!
Сейчас сделал
Listen 81
Listen 84
NameVirtualHost *:81
NameVirtualHost *:84
<VirtualHost *:81>
 Port 81
 ScriptAlias /phpbin/ "c:/php/"
 AddType application/x-httpd-php .php
 Action application/x-httpd-php "/phpbin/php-cgi.exe"
 SetEnv PHPRC C:/php
</VirtualHost>
<VirtualHost *:84>
 Port 84
 ScriptAlias /phpbin/ "c:/php4/"
 AddType application/x-httpd-php .php
 Action application/x-httpd-php "/phpbin/php-cgi.exe"
 SetEnv PHPRC C:/php4
</VirtualHost>

- всё работает!
ЗЫ: Кстати, может, поможешь ещё и с такой проблемой разбираться - если пхп делать модулем к апачу (как написано в install.txt пхп всё работает, но не грузятся расширения - при запуске апача по несколько раз выдаётся "не могу подгрузить расширение c:/php/ext/php_xxxx.dll" - при этом, такие файлы есть, и если пхп приделывать к апачу, как сейчас - всё работает... версия апача - 1.3.33, php - 5.0.2 (с четвёртой ещё не пробовал)...

stalker33rus10

Нужно поместить нужные dll в windows/system32

kruzer25

Кстати, ещё такой вопрос - сейчас апач сам по себе отлично запускается и работает, но при попытке запустить его с ключом --ntservice выдаётся:
[Tue May 09 20:42:34 2006] [error] (1063)The service process could not connect to the service controller: Error starting service control dispatcher
С чем это может быть связано?
Гулем ничего внятного не нашёл.

skvoria

Плохо гуглил
И вот: http://marc2.theaimsgroup.com/?l=apache-httpd-users&m=11...
Ключевое слово - net start apache

kruzer25

Ты про это?
> under windows try:
> net stop apache
> net start apache
Собственно, если бы по net start apache что-то запускалось, и поста бы того не было.
Проблема, что net start apache выдаёт:
The Apache service is starting....
The Apache service could not be started.
A system error has occurred.
System error 1067 has occurred.
The process terminated unexpectedly.
Стал копать - и узнал, что net start apache вызывает как раз apache --ntservice.

Sharp

а слабо покопаться еще глубже и найти таки файлик error_log и посмотреть его содержимое?
А может даже есть утилитка apachectl, которая знает ключевое слово configtest...

kruzer25

C:\Program Files\Apache Group\Apache\logs\error.log - пусто.
А с этим конфигом под ХР всё отлично работает; пути никакие не поменялись; в консольном режиме апач отлично запускается - проблемы возникают только при попытке запустить как службу.
Оставить комментарий
Имя или ник:
Комментарий: