В параметры командной строки добавлена возможность задавать путь к файлу
конфигурации, а все остальные настройки приложения можно указать в нем самом (#30)
This commit is contained in:
63
README.md
63
README.md
@@ -66,29 +66,63 @@ OPDS-сервер доступен по адресу [http://127.0.0.1:12380/opd
|
||||
Usage: inpx-web [options]
|
||||
|
||||
Options:
|
||||
--help Показать опции командной строки
|
||||
--host=<ip> Задать имя хоста для веб сервера, по умолчанию: 0.0.0.0
|
||||
--port=<port> Задать порт для веб сервера, по умолчанию: 12380
|
||||
--app-dir=<dirpath> Задать рабочую директорию, по умолчанию: <execDir>/.inpx-web
|
||||
--lib-dir=<dirpath> Задать директорию библиотеки (с zip-архивами), по умолчанию: там же, где лежит файл приложения
|
||||
--inpx=<filepath> Задать путь к файлу .inpx, по умолчанию: тот, что найдется в директории библиотеки
|
||||
--recreate Принудительно пересоздать поисковую БД при запуске приложения
|
||||
--help Показать опции командной строки
|
||||
--host=<ip> Задать имя хоста для веб сервера, по умолчанию: 0.0.0.0
|
||||
--port=<port> Задать порт для веб сервера, по умолчанию: 12380
|
||||
--config=<filepath> Задать файл конфигурации, по умолчанию: <dataDir>/config.json
|
||||
--data-dir=<dirpath> (или --app-dir) Задать рабочую директорию, по умолчанию: <execDir>/.inpx-web
|
||||
--lib-dir=<dirpath> Задать директорию библиотеки (с zip-архивами), по умолчанию: там же, где лежит файл приложения
|
||||
--inpx=<filepath> Задать путь к файлу .inpx, по умолчанию: тот, что найдется в директории библиотеки
|
||||
--recreate Принудительно пересоздать поисковую БД при запуске приложения
|
||||
--unsafe-filter Использовать небезопасный фильтр на свой страх и риск
|
||||
```
|
||||
|
||||
<a id="config" />
|
||||
|
||||
### Конфигурация
|
||||
При первом запуске в рабочей директории будет создан конфигурационный файл `config.json`:
|
||||
|
||||
По умолчанию, при первом запуске в рабочей директории будет создан конфигурационный файл `config.json`.
|
||||
При необходимости, можно настроить нужный параметр в этом файле вручную. Параметры командной
|
||||
строки имеют больший приоритет, чем настройки из `config.json`.
|
||||
|
||||
```js
|
||||
{
|
||||
// рабочая директория приложения, аналог параметра командной строки --data-dir (или --app-dir)
|
||||
// пустая строка: использовать значение по умолчанию - <execDir>/.inpx-web
|
||||
// где execDir - директория файла приложения
|
||||
"dataDir": "",
|
||||
|
||||
// директория для хранения временных файлов
|
||||
// пустая строка: использовать значение по умолчанию - <dataDir>/tmp
|
||||
// специальное значение "${OS}" указывается для использования системного каталога:
|
||||
// "${OS}" => "<os_temporary_dir>/inpx-web"
|
||||
"tempDir": "",
|
||||
|
||||
// директория для хранения логов
|
||||
// пустая строка: использовать значение по умолчанию - <dataDir>/logs
|
||||
"logDir": "",
|
||||
|
||||
// директория библиотеки (с zip-архивами), аналог параметра командной строки --lib-dir
|
||||
// пустая строка: использовать значение по умолчанию - директорию файла приложения
|
||||
// пустая строка: использовать значение по умолчанию - директорию файла приложения (execDir)
|
||||
"libDir": "",
|
||||
|
||||
// путь к файлу .inpx, аналог параметра командной строки --inpx
|
||||
// пустая строка: использовать значение по умолчанию - inpx-файл, что найдется в директории библиотеки
|
||||
"inpx": "",
|
||||
|
||||
// конфигурационный файл для фильра по авторам и книгам (см. ниже)
|
||||
// пустая строка: использовать значение по умолчанию - файл filter.json в директории файла конфигурации
|
||||
"inpxFilterFile": "",
|
||||
|
||||
// разрешить(true)/запретить(false) перезаписывать файл конфигурации, если появились новые параметры для настройки
|
||||
// файл перезаписывается с сохранением всех предыдущих настроек и с новыми по умолчанию
|
||||
// бывает полезно при выходе новых версий приложения
|
||||
"allowConfigRewrite": false,
|
||||
|
||||
// разрешить(true)/запретить(false) использовать небезопасный фильтр (см. ниже)
|
||||
// аналог параметра командной строки --unsafe-filter
|
||||
"allowUnsafeFilter": false,
|
||||
|
||||
// пароль для ограничения доступа к веб-интерфейсу сервера
|
||||
// пустое значение - доступ без ограничений
|
||||
"accessPassword": "",
|
||||
@@ -210,9 +244,6 @@ Options:
|
||||
}
|
||||
```
|
||||
|
||||
При необходимости, можно настроить нужный параметр в этом файле вручную. Параметры командной
|
||||
строки имеют больший приоритет, чем настройки из `config.json`.
|
||||
|
||||
<a id="remotelib" />
|
||||
|
||||
### Удаленная библиотека
|
||||
@@ -247,8 +278,8 @@ Options:
|
||||
### Фильтр по авторам и книгам
|
||||
|
||||
При создании поисковой БД, во время загрузки и парсинга .inpx-файла, имеется возможность
|
||||
отфильтровать авторов и книги, задав определенные критерии. Для этого небходимо создать
|
||||
в рабочей директории (там же, где `config.json`) файл `filter.json` следующего вида:
|
||||
отфильтровать авторов и книги, задав определенные критерии. По умолчанию, для этого небходимо создать
|
||||
в директории конфигурационного файла (там же, где `config.json`) файл `filter.json` следующего вида:
|
||||
```json
|
||||
{
|
||||
"info": {
|
||||
@@ -293,8 +324,10 @@ Options:
|
||||
}
|
||||
```
|
||||
Использование `filter` небезопасно, т.к. позволяет выполнить произвольный js-код внутри программы,
|
||||
поэтому запуск приложения в этом случае должен сопровождаться дополнительным параметром командной строки `--unsafe-filter`.
|
||||
поэтому запуск приложения в этом случае должен сопровождаться дополнительным параметром командной строки `--unsafe-filter`
|
||||
или разрешением в конфиге `allowUnsafeFilter`.
|
||||
Названия атрибутов inpxRec соответствуют названиям в нижнем регистре из структуры structure.info в .inpx-файле.
|
||||
Файл `filter.json` можно расположить где угодно, что задается параметром `inpxFilterFile` в конфиге.
|
||||
<a id="https" />
|
||||
|
||||
### Настройка https с помощью nginx
|
||||
|
||||
Reference in New Issue
Block a user