X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/2edc15dfb8109afb3f85e94b31e276d4bcf3b777..8201c7f46cbb253fe5f502bc4c398c5133f01bfe:/docs/admin/Installation.md
diff --git a/docs/admin/Installation.md b/docs/admin/Installation.md
index c67ff46f..bc97212e 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
@@ -25,24 +26,20 @@ and can't offer support.
For compiling:
* [cmake](https://cmake.org/)
- * [libxml2](http://xmlsoft.org/)
+ * [expat](https://libexpat.github.io/)
+ * [proj](https://proj.org/)
+ * [bzip2](http://www.bzip.org/)
+ * [zlib](https://www.zlib.net/)
+ * [Boost libraries](https://www.boost.org/), including system and filesystem
+ * PostgreSQL client libraries
* a recent C++ compiler (gcc 5+ or Clang 3.8+)
-Nominatim comes with its own version of osm2pgsql. See the
-[osm2pgsql README](https://github.com/openstreetmap/osm2pgsql/blob/master/README.md#building)
-for additional dependencies required for compiling osm2pgsql.
-
-For running tests:
-
- * [behave](http://pythonhosted.org/behave/)
- * [Psycopg2](https://initd.org/psycopg)
- * [nose](https://nose.readthedocs.io)
- * [phpunit](https://phpunit.de)
-
For running Nominatim:
- * [PostgreSQL](https://www.postgresql.org) (9.3 or later)
- * [PostGIS](https://postgis.org) (2.2 or later)
+ * [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)
* PHP-pgsql
* PHP-intl (bundled with PHP)
@@ -52,6 +49,12 @@ For running continuous updates:
* [pyosmium](https://osmcode.org/pyosmium/) (with Python 3)
+For running tests:
+
+ * [behave](http://pythonhosted.org/behave/)
+ * [nose](https://nose.readthedocs.io)
+ * [phpunit](https://phpunit.de) >= 7.3
+
### Hardware
A minimum of 2GB of RAM is required or installation will fail. For a full
@@ -118,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.
@@ -152,20 +157,35 @@ 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/`.
-Now continue with [importing the database](Import-and-Update.md).
+Now continue with [importing the database](Import.md).