|  | .. _installation apache:
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | ===================
 | 
						
						
						
							|  | Install with apache
 | 
						
						
						
							|  | ===================
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | .. sidebar:: public to the internet?
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |    If your searx instance is public, stop here and first install :ref:`filtron
 | 
						
						
						
							|  |    reverse proxy <filtron.sh>` and :ref:`result proxy morty <morty.sh>`, see
 | 
						
						
						
							|  |    :ref:`installation scripts`.
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | .. contents:: Contents
 | 
						
						
						
							|  |    :depth: 2
 | 
						
						
						
							|  |    :local:
 | 
						
						
						
							|  |    :backlinks: entry
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | Add wsgi mod
 | 
						
						
						
							|  | ============
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | .. tabs::
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |    .. group-tab:: Ubuntu / debian
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |       .. code:: sh
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |          sudo -H apt-get install libapache2-mod-uwsgi
 | 
						
						
						
							|  |          sudo -H a2enmod uwsgi
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | Add this configuration in the file ``/etc/apache2/apache2.conf``.  To limit
 | 
						
						
						
							|  | acces to your intranet replace ``Allow from all`` directive and replace
 | 
						
						
						
							|  | ``192.168.0.0/16`` with your subnet IP/class.
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | .. _inranet apache site:
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | Note that if your instance of searx is not at the root, you should change
 | 
						
						
						
							|  | ``<Location />`` by the location of your instance, like ``<Location /searx>``:
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | .. code:: apache
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |    # CustomLog /dev/null combined
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |    <IfModule mod_uwsgi.c>
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |      <Location />
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |           Options FollowSymLinks Indexes
 | 
						
						
						
							|  |           SetHandler uwsgi-handler
 | 
						
						
						
							|  |           uWSGISocket /run/uwsgi/app/searx/socket
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |           Order deny,allow
 | 
						
						
						
							|  |           Deny from all
 | 
						
						
						
							|  |           # Allow from fd00::/8 192.168.0.0/16 fe80::/10 127.0.0.0/8 ::1
 | 
						
						
						
							|  |           Allow from all
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |      </Location>
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |    </IfModule>
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | Enable apache mod_uwsgi and restart apache:
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | .. tabs::
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |    .. group-tab:: Ubuntu / debian
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |       .. code:: sh
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |          a2enmod uwsgi
 | 
						
						
						
							|  |          sudo -H systemctl restart apache2
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | disable logs
 | 
						
						
						
							|  | ============
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | For better privacy you can disable Apache logs.  Go back to
 | 
						
						
						
							|  | ``/etc/apache2/apache2.conf`` :ref:`[example] <inranet apache site>` and above
 | 
						
						
						
							|  | ``<Location />`` activate directive:
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | .. code:: apache
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |     CustomLog /dev/null combined
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | Restart apache:
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | .. tabs::
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |    .. group-tab:: Ubuntu / debian
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |       .. code:: sh
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |          sudo -H systemctl restart apache2
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | .. warning::
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  |    You can only disable logs for the whole (virtual) server not for a specific
 | 
						
						
						
							|  |    path.
 |