forked from zaclys/searxng
8d69ee5e7f
1. Serving static files with uWSGI by using static file mount points [1]. 2. Expires set to one year since there are hashes [2] [1] https://uwsgi-docs.readthedocs.io/en/latest/StaticFiles.html#mode-3-using-static-file-mount-points [2] https://github.com/searxng/searxng/pull/932 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
96 lines
2.3 KiB
Plaintext
96 lines
2.3 KiB
Plaintext
# -*- mode: conf; coding: utf-8 -*-
|
|
[uwsgi]
|
|
|
|
# uWSGI core
|
|
# ----------
|
|
#
|
|
# https://uwsgi-docs.readthedocs.io/en/latest/Options.html#uwsgi-core
|
|
|
|
# Who will run the code
|
|
uid = ${SERVICE_USER}
|
|
gid = ${SERVICE_GROUP}
|
|
|
|
# set (python) default encoding UTF-8
|
|
env = LANG=C.UTF-8
|
|
env = LANGUAGE=C.UTF-8
|
|
env = LC_ALL=C.UTF-8
|
|
|
|
# chdir to specified directory before apps loading
|
|
chdir = ${SEARX_SRC}/searx
|
|
|
|
# SearXNG configuration (settings.yml)
|
|
env = SEARXNG_SETTINGS_PATH=${SEARXNG_SETTINGS_PATH}
|
|
|
|
# disable logging for privacy
|
|
disable-logging = true
|
|
|
|
# The right granted on the created socket
|
|
chmod-socket = 666
|
|
|
|
# Plugin to use and interpretor config
|
|
single-interpreter = true
|
|
|
|
# enable master process
|
|
master = true
|
|
|
|
# load apps in each worker instead of the master
|
|
lazy-apps = true
|
|
|
|
# load uWSGI plugins
|
|
plugin = python3,http
|
|
|
|
# By default the Python plugin does not initialize the GIL. This means your
|
|
# app-generated threads will not run. If you need threads, remember to enable
|
|
# them with enable-threads. Running uWSGI in multithreading mode (with the
|
|
# threads options) will automatically enable threading support. This *strange*
|
|
# default behaviour is for performance reasons.
|
|
enable-threads = true
|
|
|
|
|
|
# plugin: python
|
|
# --------------
|
|
#
|
|
# https://uwsgi-docs.readthedocs.io/en/latest/Options.html#plugin-python
|
|
|
|
# load a WSGI module
|
|
module = searx.webapp
|
|
|
|
# set PYTHONHOME/virtualenv
|
|
virtualenv = ${SEARX_PYENV}
|
|
|
|
# add directory (or glob) to pythonpath
|
|
pythonpath = ${SEARX_SRC}
|
|
|
|
|
|
# speak to upstream
|
|
# -----------------
|
|
#
|
|
# Activate the 'http' configuration for filtron or activate the 'socket'
|
|
# configuration if you setup your HTTP server to use uWSGI protocol via sockets.
|
|
|
|
# using IP:
|
|
#
|
|
# https://uwsgi-docs.readthedocs.io/en/latest/Options.html#plugin-http
|
|
# Native HTTP support: https://uwsgi-docs.readthedocs.io/en/latest/HTTP.html
|
|
|
|
# http = ${SEARX_INTERNAL_HTTP}
|
|
|
|
# using unix-sockets:
|
|
#
|
|
# On some distributions you need to create the app folder for the sockets::
|
|
#
|
|
# mkdir -p ${SEARX_UWSGI_SOCKET}
|
|
# chown -R ${SERVICE_USER}:${SERVICE_GROUP} ${SEARX_UWSGI_SOCKET}
|
|
#
|
|
socket = ${SEARX_UWSGI_SOCKET}
|
|
|
|
# uwsgi serves the static files
|
|
# expires set to one year since there are hashes
|
|
static-map = /static=${SEARX_SRC}/searx/static
|
|
static-expires = /* 31557600
|
|
static-gzip-all = True
|
|
offload-threads = %k
|
|
|
|
# Cache
|
|
cache2 = name=searxngcache,items=2000,blocks=2000,blocksize=4096,bitmap=1
|