Skip to content

Installation guide (for pre packaged releases)

Fredrik Ekström edited this page Sep 21, 2020 · 7 revisions

Here are the simple steps you must preform in order to setup Hajk.

Requirements

  • Windows machine with IIS

Step-by-step

  1. Download the latest release from here. Look for a file named hajkXXX.zip, at the bottom of the release notes.
  2. Unpack the zip-file to a folder, e.g. D:\hajk
  3. Go to IIS
  4. Create a new website, point it to D:\hajk as root
  5. Convert admin and mapservice to IIS applications (by right-clicking and selecting "Convert to application")
  6. Launch your server and navigate to localhost (or whatever your binding for the website is, in IIS). You should see the client application spinning up. (If not, see Troubleshooting below.)
  7. The other applications are located in their respective directories, so if client is on localhost, you can reach admin on localhost/admin and map service on localhost/mapservice.

Fine-tune the admin application

  1. The mapservice application must have sufficient permissions to change files in the /mapservice/App_Data directory. This is done by giving the user that runs the IIS Application Pool (by default IIS_IUSRS) modify permission on the directory.
  2. It's recommended to restrict access to the admin application. One way to achieve it is to use IIS's built in Authentication module. Disable Anonymous Authentication and enable your authentication method of choice, such as Windows Authentication. Now users who try to reach the localhost/admin endpoint will be prompted to login in with a valid Windows username and password.

Additional info

Hajk consists of three separate applications: client, admin and mapservice.

client and admin communicate with mapservice using an API. For that to work, the two front-end applications must know where to find mapservice. That is controlled in the appConfig.json in client and config.json in admin.

Troubleshooting

The most frequent problems when setting up Hajk are related to the different parts of Hajk not being able to communicate with each other. To debug, launch Developer tools in your browser and go to the Network tab. Reload the website. Client will request two files from mapservice on load: layers and map_1. By default mapservice is located directly under web root, but if your setup varies, make sure to point to the proper mapservice application by editing client\appConfig.json. The same should be done for admin in admin\config.json.

Clone this wiki locally