Basic Installation
Pre-configured ARK setups are available from the ARK team. If you are unfamiliar with the setup and administration of webservers along with the security risks to your system and data this entails, please consider contacting us to acquire a fully running ARK. For those of you who have already got a server and want to go though the installation procedure, we have provided the following notes:
Contents
Installing ARK
Ark is installed by unpacking the source code into the document root of the webserver where you intend to host it. This process requires two steps, the Basic_Installation#Initial Setup initial setup and the Basic_Installation#Configuration configuration.
Download source
Download the latest source code from http://sourceforge.net/projects/arkdb/ sourceforge.
Dependencies
ARK requires the following open source software packages to be installed on your server:
- Apache
- PHP 5.4
- MySQL
ARK is able to connect to any WMC/WFS compliant server of geographic information. Mapserver is no longer bundled with ARK so that users can connect to a geographic database of their choice, to suit their needs. Details on Mapserver setup can be found on their website.
Mapscript
In order to benefit fully from the spatial integration offered by ARK, you will also need PHP Mapscript
Mapscript runs on all three major operating systems. The installation instructions vary depending on many factors. Detailed installation instructions are available on the Mapscript website.
Initial Setup
LINUX
Apache
Most Linux distros include a web service (like Apache) consult the documentation on your installation for instructions on how to configure your server. If your service path is configured, the service can be started with sudo service httpd start
.
If you need to install Apache, instructions can be found on their website.
On most Linux distributions these packages will be installed by default.
Unpack the ARK source code into your server doc root. Consult the documentation of your distribution if you are unsure. It is likely to be either /var/www/
or /srv/www/
.
PHP
ARK 1.1 requires PHP 5.4. PHP 5.5+ will not run ARK as some functions have been deprecated. This will be updated in future releases of ARK. It is important to ensure that you have the gd and dbase php extensions enabled.
MySQL
MySQL is included in many Linux distros, but if you do not have it you may need to install mysql-server and mysql (we use yum) you will need to run the secure installation, sudo /usr/bin/mysql_secure_installation
.
We use MySQL from the command line to add the 'arkuser' user to the MySQL installation for instance:
CREATE USER arkuser'@'%' IDENTIFIED BY 'XXXXXX';
GRANT ALL PRIVILEGES ON *.* TO 'arkuser'@'%' WITH GRANT OPTION;
The values in this must be changed in order to secure your database. See the mysql manual for more information. ARK only requires one user on the database, individual users on the website are managed by PEAR, which is bundled in the ARK package.
You will also need to create a database for your ARK to connect to.
CREATE DATABASE arkv1_1
You are encouraged to change these default names see the mysql manual for more information.
The ARK database is included in the ARK package as an SQL file. You can load this into your database by using the Source
command on the mysql terminal specifying the location of the arkv1_1.sql file.
MAC OR WINDOWS
For Mac OSX or Windows, the required packages are available as a bundle known as MAMP for Mac or WAMP Windows. Their websites detail the installation procedures for these service.
ARK runs on top of these packages and does not provide any set up of them or additional security to them. If you are using your server exposed to the internet, it is essential that you follow good standard security practice for the configuration of your packages. This setup is outside of the scope of this documentation and you are advised to undertake your research carefully.
Once you have your server running you should be able to navigate to phpmyadmin, which is a very useful tool for administrating a database. You can access it at [localhost:8888/phpMyAdmin] by default.
You can use this to create a database, an configure a user. ARK only requires one user on the database, individual users on the website are managed by PEAR, which is bundled in the ARK package. Import the arkv1_1.sql file from the ARK source code into your database using phpmyadmin.
More information on how to use phpmyadmin can be found on their website.
Configuration
Config
You will need to update the values in the config/ folder of your ARK installation to match the environment that you are working in.
settings
In settings.php
you can update the name of your ARK, this value will be used for the presentation of your website. You will also need to create a markup nickname (nname) for your ARK. This will let you store and access a human readable name for your ARK on the database.
You should also set your default site code here, but you will need to add it to the ARK database once you are connected.
environment settings
In env_settings.php
change the $server flag on line 52 to match your server type, either mac, windows or linux.
Then in the correct code block, alter the paths to match the locations of the relevant directories in your ARK environment. Both local and remote paths for OpenLayers are offered, use // to comment out the line that you are not using.
Alter the database settings at the end of the file to match the database that you created in the setup stages.
You are now ready to connect to your ARK!
Preflight Checks
Point your browser to the preflight checks file included in ARK to test that you have configured ARK correctly. It should be available at localhost:8888/'your ark directory'/config/preflight_checks.php.
This tool will list set up options with either PASS or FAIL. If your config FAILs please follow the instructions on the preflight checks page, or refer to other pages on the wiki for more details.
Browse to ARK directory
After browsing to the ARK directory you should now be able to see the login pages for the database. The default database is created with the following admin user account:
username: doe_jd password: janedoe
You will now need to create a new user for yourself, add your ARK name markup and add your default site code.
If there are any problems, please check your settings.php and env_settings.php files to ensure you are using the correct settings.