mirror of
https://github.com/osm-search/Nominatim.git
synced 2026-02-26 11:08:13 +00:00
switch documentation to describing dotenv
This commit is contained in:
@@ -162,11 +162,11 @@ PostgreSQL server process.
|
|||||||
|
|
||||||
On the client side you now need to configure the import to point to the
|
On the client side you now need to configure the import to point to the
|
||||||
correct location of the library **on the database server**. Add the following
|
correct location of the library **on the database server**. Add the following
|
||||||
line to your your `settings/local.php` file:
|
line to your your `.env` file:
|
||||||
|
|
||||||
```php
|
```php
|
||||||
@define('CONST_Database_Module_Path', '<directory on the database server where nominatim.so resides>');
|
NOMINATIM_DATABASE_MODULE_PATH="<directory on the database server where nominatim.so resides>"
|
||||||
```
|
```
|
||||||
|
|
||||||
Now change the `CONST_Database_DSN` to point to your remote server and continue
|
Now change the `NOMINATIM_DATABASE_DSN` to point to your remote server and continue
|
||||||
to follow the [standard instructions for importing](/admin/Import).
|
to follow the [standard instructions for importing](/admin/Import).
|
||||||
|
|||||||
@@ -211,11 +211,3 @@ for more information.
|
|||||||
### Can I import negative OSM ids into Nominatim?
|
### Can I import negative OSM ids into Nominatim?
|
||||||
|
|
||||||
See [this question of Stackoverflow](https://help.openstreetmap.org/questions/64662/nominatim-flatnode-with-negative-id).
|
See [this question of Stackoverflow](https://help.openstreetmap.org/questions/64662/nominatim-flatnode-with-negative-id).
|
||||||
|
|
||||||
### Missing XML or text declaration
|
|
||||||
|
|
||||||
The website might show: `XML Parsing Error: XML or text declaration not at start of entity Location.`
|
|
||||||
|
|
||||||
Make sure there are no spaces at the beginning of your `settings/local.php` file.
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -5,18 +5,17 @@ from an OSM planet file and how to keep the database up to date. It
|
|||||||
is assumed that you have already successfully installed the Nominatim
|
is assumed that you have already successfully installed the Nominatim
|
||||||
software itself, if not return to the [installation page](Installation.md).
|
software itself, if not return to the [installation page](Installation.md).
|
||||||
|
|
||||||
## Configuration setup in settings/local.php
|
## Configuration setup in `.env`
|
||||||
|
|
||||||
The Nominatim server can be customized via the file `settings/local.php`
|
The Nominatim server can be customized via a `.env` in the build directory.
|
||||||
in the build directory. Note that this is a PHP file, so it must always
|
This is a file in [dotenv](https://symfony.com/doc/4.3/components/dotenv.html) format
|
||||||
start like this:
|
which looks the same as variable settings in a standard shell environment.
|
||||||
|
You can also set the same configuration via environment variables. All
|
||||||
<?php
|
settings have a `NOMINATIM_` prefix to avoid conflicts with other environment
|
||||||
|
variables.
|
||||||
without any leading spaces.
|
|
||||||
|
|
||||||
There are lots of configuration settings you can tweak. Have a look
|
There are lots of configuration settings you can tweak. Have a look
|
||||||
at `settings/default.php` for a full list. Most should have a sensible default.
|
at `settings/env.default` for a full list. Most should have a sensible default.
|
||||||
|
|
||||||
#### Flatnode files
|
#### Flatnode files
|
||||||
|
|
||||||
@@ -24,9 +23,9 @@ If you plan to import a large dataset (e.g. Europe, North America, planet),
|
|||||||
you should also enable flatnode storage of node locations. With this
|
you should also enable flatnode storage of node locations. With this
|
||||||
setting enabled, node coordinates are stored in a simple file instead
|
setting enabled, node coordinates are stored in a simple file instead
|
||||||
of the database. This will save you import time and disk storage.
|
of the database. This will save you import time and disk storage.
|
||||||
Add to your `settings/local.php`:
|
Add to your `.env`:
|
||||||
|
|
||||||
@define('CONST_Osm2pgsql_Flatnode_File', '/path/to/flatnode.file');
|
NOMINATIM_FLATNODE_FILE="/path/to/flatnode.file"
|
||||||
|
|
||||||
Replace the second part with a suitable path on your system and make sure
|
Replace the second part with a suitable path on your system and make sure
|
||||||
the directory exists. There should be at least 75GB of free space.
|
the directory exists. There should be at least 75GB of free space.
|
||||||
@@ -124,7 +123,7 @@ import styles available which only read selected data:
|
|||||||
Like the full style but also adds most of the OSM tags into the extratags
|
Like the full style but also adds most of the OSM tags into the extratags
|
||||||
column.
|
column.
|
||||||
|
|
||||||
The style can be changed with the configuration `CONST_Import_Style`.
|
The style can be changed with the configuration `NOMINATIM_IMPORT_STYLE`.
|
||||||
|
|
||||||
To give you an idea of the impact of using the different styles, the table
|
To give you an idea of the impact of using the different styles, the table
|
||||||
below gives rough estimates of the final database size after import of a
|
below gives rough estimates of the final database size after import of a
|
||||||
@@ -269,9 +268,9 @@ entire US adds about 10GB to your database.
|
|||||||
|
|
||||||
./utils/setup.php --import-tiger-data
|
./utils/setup.php --import-tiger-data
|
||||||
|
|
||||||
3. Enable use of the Tiger data in your `settings/local.php` by adding:
|
3. Enable use of the Tiger data in your `.env` by adding:
|
||||||
|
|
||||||
@define('CONST_Use_US_Tiger_Data', true);
|
NOMINATIM_USE_US_TIGER_DATA=yes
|
||||||
|
|
||||||
4. Apply the new settings:
|
4. Apply the new settings:
|
||||||
|
|
||||||
|
|||||||
@@ -19,9 +19,9 @@ pip3 install --user osmium
|
|||||||
|
|
||||||
Nominatim needs a tool called `pyosmium-get-changes` which comes with
|
Nominatim needs a tool called `pyosmium-get-changes` which comes with
|
||||||
Pyosmium. You need to tell Nominatim where to find it. Add the
|
Pyosmium. You need to tell Nominatim where to find it. Add the
|
||||||
following line to your `settings/local.php`:
|
following line to your `.env`:
|
||||||
|
|
||||||
@define('CONST_Pyosmium_Binary', '/home/user/.local/bin/pyosmium-get-changes');
|
NOMINATIM_PYOSMIUM_BINARY=/home/user/.local/bin/pyosmium-get-changes
|
||||||
|
|
||||||
The path above is fine if you used the `--user` parameter with pip.
|
The path above is fine if you used the `--user` parameter with pip.
|
||||||
Replace `user` with your user name.
|
Replace `user` with your user name.
|
||||||
@@ -32,15 +32,15 @@ Next the update needs to be initialised. By default Nominatim is configured
|
|||||||
to update using the global minutely diffs.
|
to update using the global minutely diffs.
|
||||||
|
|
||||||
If you want a different update source you will need to add some settings
|
If you want a different update source you will need to add some settings
|
||||||
to `settings/local.php`. For example, to use the daily country extracts
|
to `.env`. For example, to use the daily country extracts
|
||||||
diffs for Ireland from Geofabrik add the following:
|
diffs for Ireland from Geofabrik add the following:
|
||||||
|
|
||||||
// base URL of the replication service
|
# base URL of the replication service
|
||||||
@define('CONST_Replication_Url', 'https://download.geofabrik.de/europe/ireland-and-northern-ireland-updates');
|
NOMINATIM_REPLICATION_URL="https://download.geofabrik.de/europe/ireland-and-northern-ireland-updates"
|
||||||
// How often upstream publishes diffs
|
# How often upstream publishes diffs
|
||||||
@define('CONST_Replication_Update_Interval', '86400');
|
NOMINATIM_REPLICATION_UPDATE_INTERVAL=86400
|
||||||
// How long to sleep if no update found yet
|
# How long to sleep if no update found yet
|
||||||
@define('CONST_Replication_Recheck_Interval', '900');
|
NOMINATIM_REPLICATION_RECHECK_INTERVAL=900
|
||||||
|
|
||||||
To set up the update process now run the following command:
|
To set up the update process now run the following command:
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ once with `class` of `highway` and once with a `class` of `bridge`. Thus the
|
|||||||
## Configuring the Import
|
## Configuring the Import
|
||||||
|
|
||||||
How tags are interpreted and assigned to the different `place` columns can be
|
How tags are interpreted and assigned to the different `place` columns can be
|
||||||
configured via the import style configuration file (`CONST_Import_style`). This
|
configured via the import style configuration file (`NOMINATIM_IMPORT_STYLE`). This
|
||||||
is a JSON file which contains a list of rules which are matched against every
|
is a JSON file which contains a list of rules which are matched against every
|
||||||
tag of every object and then assign the tag its specific role.
|
tag of every object and then assign the tag its specific role.
|
||||||
|
|
||||||
|
|||||||
@@ -87,9 +87,9 @@ into the database. There are a few hard-coded rules for the assignment:
|
|||||||
* highway nodes
|
* highway nodes
|
||||||
* landuse that is not an area
|
* landuse that is not an area
|
||||||
|
|
||||||
Other than that, the ranks can be freely assigned via the JSON file
|
Other than that, the ranks can be freely assigned via the JSON file according
|
||||||
defined with `CONST_Address_Level_Config` according to their type and
|
to their type and the country they are in. The name of the config file to be
|
||||||
the country they are in.
|
used can be changed with the setting `NOMINATIM_ADDRESS_LEVEL_CONFIG`.
|
||||||
|
|
||||||
The address level configuration must consist of an array of configuration
|
The address level configuration must consist of an array of configuration
|
||||||
entries, each containing a tag definition and an optional country array:
|
entries, each containing a tag definition and an optional country array:
|
||||||
|
|||||||
Reference in New Issue
Block a user