Mapbender is a web based geoportal framework.
At a minimum, Mapbender requires OpenSSL, curl, a PHP 5.4 interpreter, bzip2 decompression and the following php extensions to be installed and enabled:
You may have to install and enable further extensions at your own discretion if you want to use specific database systems.
We also recommend installing an sqlite client so you can inspect the (default) sqlite database.
sudo apt-get install php php-cli openssl bzip2 \ php-curl php-gd php-intl php-mbstring \ php-bz2 php-xml php-json \ php-sqlite php-pgsql php-mysql \ sqlite curl
14.04 is similar, but requires activation of the "universe" repository and uses versioned package names ("php5-" instead of "php-").
Activate universe repository:
sudo add-apt-repository universe
Update package list:
sudo apt-get update
sudo apt-get install php5 php5-cli openssl bzip2 \ php5-curl php5-gd php5-intl php5-mbstring \ php5-xml php5-json \ php5-sqlite php5-pgsql php5-mysql sqlite curl
Make sure your PHP interpreter has explicitly configured temp and uploads directories and that they are writable. In >= PHP5.5,
there are separate php.ini settings for
PHP <= 5.4 uses the value of
upload_tmp_dir for both.
Your system most likely has separate php.ini files for cli and web server SAPIs such as mod_php, php-fpm, fcgi etc. Make sure to make changes in all php.ini files relevant to your installation.
Getting the code
Git clone mapbender-starter via ssh or https at your preference:
git clone email@example.com:mapbender/mapbender-starter.git mapbender-starter
git clone https://github.com/mapbender/mapbender-starter.git mapbender-starter
Switch to project directory and run ./bootstrap
cd mapbender-starter ./bootstrap
The bootstrap command performs the following required setup tasks for you:
- installs userland dependencies (via composer)
- creates a parameters.yml by copying the bundled parameters.yml.dist
- performs the necessary database setup (as an sqlite file in
- creates a root account with a default password
root(which you should change later)
The full setup processes is only needed once. If you invoke it again, nothing of consequence will happen.
You can test your freshly bootstrapped Mapbender installation using a built-in development server. This is not production quality, and has some known issues processing external requests (such as in printing), but it allows some quick testing before you set up a production-grade web server.
The server is started like this:
The URL is shown in the output:
Server running on http://localhost:8000
Changing root account password
From the application directory run:
Our code is maintained using git and hosted at Github. We split up our code into several parts:
- mapbender-starter: The starter project you are using right now. This provides a complete application to play with and build upon.
- mapbender: The CoreBundle contains all basic functionality, including base classes and interfaces for the Mapbender API usable by Mapbender and third-party bundles.
- FOM: User and rights management.
- OWSProxy3: OWSProxy3 is a transparent Buzz-based proxy that uses cURL for connection to web resources via/without a proxy server.
- mapquery: Mapbender uses MapQuery as its jQuery/OpenLayers wrapper. We maintain our own clone.
Please report issues at the Mapbender repository here at Github.
Pre-built Tarballs and Zip files (where all subbodules and Symfony bundles are integrated) are available at our Download page.
Mapbender demo & sandbox
Wanna see Mapbender live? A demo installation is available at http://demo.mapbender.org/.
Follow us on Twitter
You can follow Mapbender at Twitter.