| 207 | |
| 208 | Вам будет предложено ввести информацию, необходимую для создания окружения: имя вашего проекта и [TracEnvironment#DatabaseConnectionStrings строку подключения к базе данных]. Если вы не уверены в том, какую информацию нужно вводить в качестве параметров, просто нажмите клавишу `<Enter>`, чтобы использовать значение по-умолчанию. |
| 209 | |
| 210 | Использование строки соединения с базой данных по-умолчанию, работает всегда, так как SQLite у вас всегда установлен. Для других [trac:DatabaseBackend СУБД] необходимо заранее разработать план и иметь установленную и полностью рабочую базу данных к этому моменту. |
| 211 | |
| 212 | Также примите к сведению, что значения введенные на этом шаге, могут быть изменены позднее, при помощи TracAdmin или непосредственно, редактированием файла конфигурации [TracIni conf/trac.ini]. |
| 213 | |
| 214 | {{{#!div style="border: 1pt dotted; margin: 1em" |
| 215 | **Предупреждение Файловая система:** При выборе расположения вашего окружения, убедитесь что файловая система носителя где расположен каталог вашего окружения поддерживает временные метки включающие миллисекунды (например, **не такие как** `ext2` или `ext3` в Linux, или HFS+ в OSX), так как изменения в файле `conf/trac.ini` будут отслеживаться для определения необходимости в перезагрузке. Слишком грубое разрешение временной метки может повлечь нарушение целостности в Trac < 1.0.2. Отличный совет, выбрать платформу с более точными временными метками, вне зависимости от версии Trac. |
| 216 | }}} |
| 217 | |
| 218 | В завершении, убедитесь что аккаунт пользователя под которым должен запускаться веб-интерфейс, имеет '''права на изменение''' каталога окружения и всех файлов в нем. Вы можете добится этого запустив команду `trac-admin ... initenv` от имени этого пользователя, если нет, вы должны изменить пользователя самостоятельно. Например в Linux, веб-сервер запускается от имени пользователя `apache` и группы `apache`, введите команду: |
| 219 | {{{#!sh |
| 220 | $ chown -R apache:apache /path/to/myproject |
| 221 | }}} |
| 222 | |
| 223 | Текущее имя пользователя и имя группы сервера Apache, не обязательно должно иметь значение `apache`, и определяется в файле настроек сервера, директивами `User` и `Group` (если вы используете Apache `httpd`). |
| 224 | |
| 225 | {{{#!div class=important |
| 226 | '''Внимание:''' Пожалуйста используйте только ASCII-символы в имени пользователя и в пути к папке проекта, здесь не поддерживаются символы unicode. |
| 227 | }}} |
| 228 | |
| 229 | == Развертывание Trac |
| 230 | |
| 231 | {{{#!div style="border: 1pt dotted; margin: 1em" |
| 232 | **Предупреждение Setuptools:** Если версия вашего пакета setuptools находится в диапазоне от 5.4 до 5.6, переменная окруженя `PKG_RESOURCES_CACHE_ZIP_MANIFESTS` должна быть установлена, для предотвращения существенного снижения производительности. |
| 233 | |
| 234 | При запуске `tracd`, переменная окружения может быть установлена на уровне системы или только на уровне пользователя который запускает процесс `tracd`. Есть несколько способов сделать то, о чем здесь говорится и зависит это от того, какой дистрибутив операционной системы у вас установлен. |
| 235 | |
| 236 | Для установки переменной на системном уровне нужно добавить скрипт оболочки с оператором `export` в `/etc/profile.d`. Для установки на уровне пользовательской сессии оператор `export` может быть добавлен в `~/.profile`. |
| 237 | {{{#!sh |
| 238 | export PKG_RESOURCES_CACHE_ZIP_MANIFESTS=1 |
| 239 | }}} |
| 240 | |
| 241 | Другой вариант, когда переменная устанавливается в оболочке перед запуском `tracd`: |
| 242 | {{{#!sh |
| 243 | $ PKG_RESOURCES_CACHE_ZIP_MANIFESTS=1 tracd --port 8000 /path/to/myproject |
| 244 | }}} |
| 245 | |
| 246 | При запуске веб-сервера Apache, пользователи !Ubuntu/Debian должны добавить оператор `export` в `/etc/apache2/envvars`. Пользователи !RedHat/CentOS/Fedora должны добавить оператор `export` в `/etc/sysconfig/httpd`. |
| 247 | }}} |
| 248 | |
| 249 | === Запуск встроенного сервера |
| 250 | |
| 251 | После создания окружения Trac, вы легко можете ознакомиться с его веб-интерфейсом запустив встроенный сервер [TracStandalone tracd]: |
| 252 | {{{#!sh |
| 253 | $ tracd --port 8000 /path/to/myproject |
| 254 | }}} |
| 255 | |
| 256 | Затем запустите браузер и перейдите на страницу `http://localhost:8000/`. Вы должны увидеть простой список всех окружений о которых известно `tracd`. Перейдите по ссылке в только что созданное окружение, и вы увидите Trac в действии. Если вы планируете использовать Trac для управления только одним проектом вы можете заставить встроенный сервер, пропустить список окружений, запустив его следующим образом: |
| 257 | {{{#!sh |
| 258 | $ tracd -s --port 8000 /path/to/myproject |
| 259 | }}} |
| 260 | |
| 261 | === Запуск Trac на веб-сервере |
| 262 | |
| 263 | Trac поддерживает различные опции подключения к "реальному" веб-серверу: |
| 264 | - [TracFastCgi FastCGI] |
| 265 | - [wiki:TracModWSGI Apache с mod_wsgi] |
| 266 | - [TracModPython Apache с mod_python] |
| 267 | - [TracCgi CGI] //(не должен использоваться, так как производительность далека от оптимальной)// |
| 268 | |
| 269 | Trac так же существует поддержка [trac:TracOnWindowsIisAjp AJP], их вы можете выбрать если хотите подключится к IIS. Возможны и другие сценарии развертывания: [trac:TracNginxRecipe nginx], [https://uwsgi-docs.readthedocs.io/en/latest/#Traconapacheinasub-uri uwsgi], [trac:TracOnWindowsIisIsapi Isapi-wsgi] и прочие. |
| 270 | |
| 271 | ==== Создание директории Trac - cgi-bin #cgi-bin |
| 272 | |
| 273 | Скрипты приложения для CGI, FastCGI и mod-wsgi могут быть созданы при помощи команды [TracAdmin trac-admin] `deploy`: |
| 274 | [[TracAdminHelp(deploy)]] |
| 275 | |
| 276 | Установите веб-серверу права на выполнение для скриптов в директории `cgi-bin`. |
| 277 | |
| 278 | Например, следующие шаги создадут тепичную структуру каталогов: |
| 279 | {{{#!sh |
| 280 | $ mkdir -p /var/trac |
| 281 | $ trac-admin /var/trac/<project> initenv |
| 282 | $ trac-admin /var/trac/<project> deploy /var/www |
| 283 | $ ls /var/www |
| 284 | cgi-bin htdocs |
| 285 | $ chmod ugo+x /var/www/cgi-bin/* |
| 286 | }}} |
| 287 | |
| 288 | ==== Размещение статических ресурсов |
| 289 | |
| 290 | Без дополнительной настройки Trac будет обрабатывать запросы к статическим ресурсам таким как таблицы стилей и изображения. В любом случае, кроме развертывания встроенного сервера TracStandalone, это является не оптимальным, так как веб-сервер может напрямую обслуживать статические ресурсы. При использовании CGI, это ''' крайне нежелательно ''', так как приводит к ужасной производительности. |