X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/42f6371e474cd8315a7c580b7e15b25ab4c19923..3b20b11a9fb87dee1c73412366abe9a3eb5891a5:/docs/admin/Installation.md diff --git a/docs/admin/Installation.md b/docs/admin/Installation.md index a02b48e2..cf994c4c 100644 --- a/docs/admin/Installation.md +++ b/docs/admin/Installation.md @@ -36,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) @@ -45,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) @@ -57,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 @@ -125,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. @@ -159,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/`.