Запуск сервера TRAC с несколькими независимыми проектами

Я использую сервер TRAC (служба tracd) с 3 настроенными независимыми проектами. У каждого проекта есть собственный файл паролей, чтобы управление пользователями оставалось независимым. TRAC запускается как служба Windows, как описано на https://trac.edgewall.org/wiki/0.11/TracStandalone Кажется, что запуск сервера TRAC не работает, если длина строки ключа AppParameters в HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ tracd \ Parameters слишком велика. Максимальная длина ключа составляет около 260 символов.

Сервер TRAC может быть успешно запущен с помощью следующего ключа AppParameters:

C:\Python27\Scripts\tracd-script.py -p 80 --auth=',C:\Trac\Moisture\conf\.htpasswd,mt.com' --auth=',C:\Trac\Balances\conf\.htpasswd,mt.com' --auth=',C:\Trac\Weights\conf\.htpasswd,mt.com' C:\Trac\Moisture C:\Trac\Balances C:\Trac\Weights

Сервер TRAC не запускается со следующим ключом AppParameters:

C:\Python27\Scripts\tracd-script.py -p 80 --auth='Moisture,C:\Trac\Moisture\conf\.htpasswd,mt.com' --auth='Balances,C:\Trac\Balances\conf\.htpasswd,mt.com' --auth='Weights,C:\Trac\Weights\conf\.htpasswd,mt.com' C:\Trac\Moisture C:\Trac\Balances C:\Trac\Weights

Если я добавлю четвертый проект, то больше невозможно будет запустить сервер TRAC, потому что строка слишком длинная. Известна ли эта проблема? Есть ли обходной путь?


person Widtmann    schedule 21.03.2018    source источник


Ответы (1)


Вы также можете сократить свою команду, используя параметр -e для указания родительской среды Trac каталог, а не явно перечислять каждый путь к среде.

Более обширное решение:

Вы можете запустить службу с помощью nssm.

  1. Установите nssm и поместите его на свой путь. Я установил с помощью диспетчера пакетов шоколадного: choco install -y nssm.
  2. Создайте командный файл run_tracd.bat:

    C:\Python27-x86\Scripts\tracd.exe -p 8080 env1

  3. Запускаем nssm install tracd:

    введите описание изображения здесь

  4. Запустите nssm start tracd

Необязательно делать это именно так. Вы можете избежать файла bat и ввести параметры в графическом интерфейсе nssm. Я не специалист по Windows, но мне нравится иметь файл bat, потому что его легче редактировать. Однако могут быть проблемы с безопасностью, о которых я не знаю, или может быть более надежным поместить параметры в графический интерфейс nssm (вам не нужно беспокоиться о случайном удалении файла bat). Для меня также работает следующее:

введите описание изображения здесь

person RjOllos    schedule 21.03.2018
comment
С параметром -e вроде работает. Большое Вам спасибо. - person Widtmann; 23.03.2018