|
Апач 2.4 - косяк с размножением | ☑ | ||
---|---|---|---|---|
0
NegroNegro
02.03.21
✎
13:27
|
Уважаемые участники, прошу помощи.
Вероятно, руки кривые и по сему - траблы. Хотел для обслуги файловой базы запустить несколько экземпляров апача 2.4 под 2012-м серваком. Не гут ведь строить клиентов в очередь к однопоточной компоненте, - лучше запустить сразу несколько копий апача на разных портах. Да? Скачал с apachehaus.com архив 2.4-го, распаковал в две разные папки, подправил в каждой в конфиге имя сервера и порт на listen: Define SRVROOT "/Apache241" Listen 8001 Define SRVROOT "/Apache242" Listen 8002 Закинул в сервисы: httpd.exe -k install -n "apache1" -f "C:\Apache241\conf\httpd.conf" httpd.exe -k install -n "apache2" -f "C:\Apache242\conf\httpd.conf" В сервисах-то они оба видны, но запускается за раз лишь любой один. Второй дает ошибку завершения с кодом 1. Подскажите, плиз, где косяк, или что в принципе упустил (впервые курю)... А может, это фича 2.4-го, и теперь вообще нельзя несколько экземпляров запустить? --------------------------------- - на оф.сайте нашел вот что (https://httpd.apache.org/docs/2.4/platform/windows.html): Because Apache for Windows is multithreaded, it does not use a separate process for each request, as Apache can on Unix. Instead there are usually only two Apache processes running: a parent process, and a child which handles the requests. Within the child process each request is handled by a separate thread. ..... Warning: The server configuration file is reread when a new child process is started. If you have modified httpd.conf, the new child may not start or you may receive unexpected results. ThreadsPerChild: This directive is new. It tells the server how many threads it should use. This is the maximum number of connections the server can handle at once, so be sure to set this number high enough for your site if you get a lot of hits. The recommended default is ThreadsPerChild 150, but this must be adjusted to reflect the greatest anticipated number of simultaneous connections to accept. |
|||
1
NegroNegro
02.03.21
✎
14:43
|
Некоторое уточнение
Сделал старт из командной строки и получил такое: (OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : AH00072: make_socd: could not bind to address [::]:443 (OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : AH00072: make_socd: could not bind to address 0.0.0.0:443 |
|||
2
NegroNegro
02.03.21
✎
14:51
|
Полазил по конфигам и в паре файлов кое что нашел
В httpd-ssl.conf - Define SSL_PORT 443 В httpd-ahssl.conf - Listen 443 https <VirtualHost _default_:443> SSLEngine on ServerName localhost:443 SSLCertificateFile "${SRVROOT}/conf/ssl/server.crt" SSLCertificateKeyFile "${SRVROOT}/conf/ssl/server.key" DocumentRoot "${SRVROOT}/htdocs" # DocumentRoot access handled globally in httpd.conf CustomLog "${SRVROOT}/logs/ssl_request.log" \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" <Directory "${SRVROOT}/htdocs"> Options Indexes Includes FollowSymLinks AllowOverride AuthConfig Limit FileInfo Require all granted </Directory> </virtualhost> |
|||
3
ДедМорроз
02.03.21
✎
14:52
|
У тебя порт 443 для шифрованного соединения один и тот же на нескольких apache вот они за него и подрались.
|
|||
4
NegroNegro
02.03.21
✎
14:53
|
Именно!
И я сейчас его заменил на 8003 во втором экземпляре. И 2.4 стартанул |
|||
5
NegroNegro
02.03.21
✎
14:54
|
Вопрос лишь, - не стремно ли менять порт шифрования...
|
|||
6
Garykom
гуру
02.03.21
✎
15:25
|
(5) не стремно а нужно! ну или отруби его совсем
|
|||
7
Garykom
гуру
02.03.21
✎
15:26
|
Кста ssl может быть на любом порту, это просто умолчания что без ssl|http на 80 а с ssl|https на 443
|
|||
8
NegroNegro
02.03.21
✎
15:49
|
(6) Так и поступил. Продолжаю танцы с бубном) Перешел к публикации базы. Чувствую, еще сюрпризы на подходе
|
|||
9
ДедМорроз
02.03.21
✎
15:50
|
Что-то мне подсказывает,что можно в одного индейца одну и ту же базу в разные каталоги опубликовать.
|
|||
10
NegroNegro
02.03.21
✎
16:00
|
(9) Ну я так и делаю. Скопировал уже полностью с публикацией апач, только в конфигах изменил порт, имя сервера и порт шифрования. Запустил два экземпляра (четыре пера в процессах - дочерний процесс у каждого) и сейчас предвкушаю облом какой-нибудь
|
|||
11
NegroNegro
02.03.21
✎
16:03
|
(9)/(10) Нет, смотри-ка... Шуршит. Оба пера наполнились...
|
|||
12
Garykom
гуру
02.03.21
✎
16:05
|
(9) плагин/модуль один будет и в один поток - нет смысла
|
|||
13
Garykom
гуру
02.03.21
✎
16:07
|
(11) Сделай доброе дело наваяй на 1С инсталлятор апача в много потоков ))
Я когда то начал писать (начиная со скачивания последней версии с https://www.apachelounge.com/download/)но забросил Выложить на ИС и срубить немного $m |
|||
14
Garykom
гуру
02.03.21
✎
16:08
|
(13)+ В смысле внешняя обработка для 1С, которая сама апач скачает, распакует, конфиги пропишет и базу выбранную опубликует
|
|||
15
NegroNegro
02.03.21
✎
16:10
|
(12) Один экземпляр модуля в памяти? И его нельзя размножить?
Зачем же тогда все шаманство? |
|||
16
Garykom
гуру
02.03.21
✎
16:19
|
(15) это если несколько публикаций на одном апаче
вот когда по одной публикации на нескольких апачах все ок |
|||
17
Garykom
гуру
02.03.21
✎
16:22
|
LoadModule _1cws_module "C:\Program Files\1cv83\8.3.8.2054\bin\wsap24.dll"
Фишка что если умудриться чтобы разные/несколько dll в один апач то все ок будет Но я хз можно ли тупо dll задублить, прописать нескоко раз в конфиг одного апача |
|||
18
NegroNegro
02.03.21
✎
16:22
|
По факту замышляется несколько публикаций на нескольких апачах. NxN. Т.е. апачей нужно по числу пользователей. Тут действительно какой-нибудь визард бы не повредил, ты хорошее дело задумал.
|
|||
19
NegroNegro
02.03.21
✎
16:25
|
(17) Так глубоко мысль боится лезть). Главное, что каждый экземпляр апача грузит свой плагин и он лезет в базу как обычный юзер. Вот если тут стабильность гарантирована, то зашебись.
|
|||
20
Garykom
гуру
02.03.21
✎
16:26
|
(17) ну теоретически можно взять мануал https://habr.com/ru/post/50909/
далее написать свою обертку "wsap24.dll" которая будет юзать несколько родных wsap24.dll |
|||
21
NegroNegro
02.03.21
✎
16:57
|
Да, еще нюанс (если верно воспринял). Вот так нельзя
httpd.exe -k install -n "apache1" -f "C:\Apache241\conf\httpd.conf" Нужно (для первого экземпляра апача, где будут созданы все публикации) исключительно так: httpd.exe -k install -n "Apache 2.4" -f "C:\Apache241\conf\httpd.conf" Ибо 1с ищет апач в списке сервисов по имени и если не находит, то не выдает в публикаторе вообще апачевскую опцию. Дальше уже можно копировать папки, меняя порты, имена сервера и еще доп.вхождения папок в конфигах. А VRD, вроде бы, можно тупо размножить. И сертификаты. |
|||
22
Garykom
гуру
02.03.21
✎
17:22
|
(21) таки публикацию можно вручную
|
|||
23
NegroNegro
02.03.21
✎
17:51
|
(22) Чем лучше, тем проще.
Для себя описал весь процесс так (поправь, если где ошибки или забыл): 1. Распаковываем апач в папку apache241 (пускай так). и в ней: 2. - генерим сертификат и прописываем в конфиг ссл. 3. - меняем в конфиге порты - 80 на 8001, 443 на 80N1 и сервер на apache241 4. - стартуем сервис (с именем"Apache 2.4"/дефолтно) 5. - делаем все нужные публикации 6. Размножаем папку, автозаменяя на 800i, 80Ni apache24i в конфигах. 7. Ну и батники делаем для установки, старта, стопорения по типу httpd.exe -k install -n "Apache 2.4" -f "C:\Apache241\conf\httpd.conf" {httpd.exe -k install -n "Apache 2.4i" -f "C:\Apache24i\conf\httpd.conf"} Все, вроде. Пусть будет памятка... |
|||
24
NegroNegro
02.03.21
✎
17:54
|
С портами "регуляризация" для удобства, если скрипт писать...
|
|||
25
Garykom
гуру
02.03.21
✎
18:00
|
(23) вроде бы копировать сам апач целиком не треба
достаточно конфиг |
|||
26
NegroNegro
02.03.21
✎
18:01
|
(25) Безусловно. Но поскольку он небольшой весьма, мне лично удобно просто отдельные как бы полностью автономные папки держать.
|
|||
27
Йохохо
02.03.21
✎
18:33
|
(23) откуда предубеждение что имя должно быть коротким в угоду читаемости? + я за с: сразу метко кидаю ссаным тапком + нотепад++ так чудесно меняет всё в пачке ххх.конф + при публикации есть кнопка сохранить, используя опубликовать вы просто боитесь отбросить убогий костыль
|
|||
28
NegroNegro
02.03.21
✎
18:48
|
(27) Какое имя?)
|
|||
29
Aleksey
02.03.21
✎
19:17
|
А что это уже не работает? http://catalog.mista.ru/public/239498/
|
|||
30
NegroNegro
02.03.21
✎
19:24
|
Не знаю). Вполне возможно, что работает. Хотя, вот, опять же -2.4, ssl - когда это появилось - неведомо, сколько ни гуглил, все только про обычный listen пишут. Желательно же понимать, что и как, чтобы без сторонних инструментов быстро можно было сделать.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |