X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/c1ef56c870575a881ff81f409b696af0f7838a6a..b1e5f3cbed17d862fda8f6a238aa1d69fe8786c0:/docs/admin/Installation.md?ds=inline diff --git a/docs/admin/Installation.md b/docs/admin/Installation.md index 0dd6579b..cf994c4c 100644 --- a/docs/admin/Installation.md +++ b/docs/admin/Installation.md @@ -4,8 +4,9 @@ This page contains generic installation instructions for Nominatim and its prerequisites. There are also step-by-step instructions available for the following operating systems: + * [Ubuntu 20.04](../appendix/Install-on-Ubuntu-20.md) * [Ubuntu 18.04](../appendix/Install-on-Ubuntu-18.md) - * [Ubuntu 16.04](../appendix/Install-on-Ubuntu-16.md) + * [CentOS 8](../appendix/Install-on-Centos-8.md) * [CentOS 7.2](../appendix/Install-on-Centos-7.md) These OS-specific instructions can also be found in executable form @@ -35,8 +36,8 @@ For compiling: For running Nominatim: - * [PostgreSQL](https://www.postgresql.org) (9.3 - 11) - * [PostGIS](https://postgis.org) (2.2 - 2.5) + * [PostgreSQL](https://www.postgresql.org) (9.3+) + * [PostGIS](https://postgis.org) (2.2+) * [Python 3](https://www.python.org/) * [Psycopg2](https://initd.org/psycopg) * [PHP](https://php.net) (7.0 or later) @@ -44,10 +45,6 @@ For running Nominatim: * PHP-intl (bundled with PHP) * a webserver (apache or nginx are recommended) -!!! danger "Important" - Postgresql 12+ and Postgis 3.0+ are known to cause performance issues. They are - not recommended for a production installation at the moment. - For running continuous updates: * [pyosmium](https://osmcode.org/pyosmium/) (with Python 3) @@ -56,7 +53,7 @@ For running tests: * [behave](http://pythonhosted.org/behave/) * [nose](https://nose.readthedocs.io) - * [phpunit](https://phpunit.de) + * [phpunit](https://phpunit.de) >= 7.3 ### Hardware @@ -124,13 +121,15 @@ from there. Make sure your Apache configuration contains the required permissions for the directory and create an alias: - - Options FollowSymLinks MultiViews - AddType text/html .php - DirectoryIndex search.php - Require all granted - - Alias /nominatim /srv/nominatim/build/website +``` apache + + Options FollowSymLinks MultiViews + AddType text/html .php + DirectoryIndex search.php + Require all granted + +Alias /nominatim /srv/nominatim/build/website +``` `/srv/nominatim/build` should be replaced with the location of your build directory. @@ -158,17 +157,32 @@ follows: Tell nginx that php files are special and to fastcgi_pass to the php-fpm unix socket by adding the location definition to the default configuration. - root /srv/nominatim/build/website; - index search.php index.html; - location ~ [^/]\.php(/|$) { - fastcgi_split_path_info ^(.+?\.php)(/.*)$; - if (!-f $document_root$fastcgi_script_name) { - return 404; - } - fastcgi_pass unix:/var/run/php5-fpm.sock; - fastcgi_index search.php; - include fastcgi.conf; +``` nginx +root /srv/nominatim/build/website; +index search.php; +location / { + try_files $uri $uri/ @php; +} + +location @php { + fastcgi_param SCRIPT_FILENAME "$document_root$uri.php"; + fastcgi_param PATH_TRANSLATED "$document_root$uri.php"; + fastcgi_param QUERY_STRING $args; + fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; + fastcgi_index index.php; + include fastcgi_params; +} + +location ~ [^/]\.php(/|$) { + fastcgi_split_path_info ^(.+?\.php)(/.*)$; + if (!-f $document_root$fastcgi_script_name) { + return 404; } + fastcgi_pass unix:/var/run/php7.3-fpm.sock; + fastcgi_index search.php; + include fastcgi.conf; +} +``` Restart the nginx and php5-fpm services and the website should now be available at `http://localhost/`.