Mapbender is a web based geoportal framework.
The official site contains documentation and installation information (also available in German).
To install Mapbender from this Git-repository, please read the guide of the Git-based installation (in German).
At a minimum, Mapbender requires OpenSSL, curl, a PHP 5.4 interpreter, bzip2 decompression and the following php extensions to be installed and enabled:
- curl
- gd
- intl
- mbstring
- bz2
- xml
- json
- sqlite
- ldap
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.
E.g.
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 php-ldap \
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
Install packages:
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 php5-ldap \
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 sys_temp_dir
and upload_tmp_dir
.
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.
Git clone mapbender-starter via ssh or https at your preference:
git clone [email protected]:mapbender/mapbender-starter.git mapbender-starter
or
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
application/app/db/demo.sqlite
) - 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:
cd application
app/console server:run
The URL is shown in the output:
Server running on http://localhost:8000
From the application directory run:
app/console fom:user:resetroot
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.
Wanna see Mapbender live? A demo installation is available at http://demo.mapbender.org/.
You can follow Mapbender at Twitter.