# Standalone Website for ArcGIS Maps SDK for Unreal Engine
This document helps you install and run the ArcGIS Maps SDK for Unreal Engine documentation from a local web server so you can access it without a connection to the internet. The documentation includes the developer guide, API reference, tutorials and samples documentation. The online documentation is hosted on the [ArcGIS Developer](https://developers.arcgis.com/unreal-engine/) website.
You must agree to the [Terms of Use](EULA.pdf) before installing this documentation.
This documentation is designed to run on a local stand-alone computer or on an internal network and not on the public internet. It is a violation of the terms to run this on a public web server.
> The documentation must be hosted on a web server at the root path. It cannot run as a subfolder in another website. You cannot access this documentation over a `file://` URL or by opening the files directly in a web browser.
## System Requirements
To run this documentation package, you will need a machine with:
1. A minimum of 5 GB of available disk space.
2. A web server.
3. A text editor.
## Installation
1. Download and unzip the package. The archive contains two folders: `install` and `public`. The `install` folder contains the installation instructions (that you are currently reading) and supporting files. The `public` folder holds all the files required to render the website.
2. Serve the content inside the `public` folder from a local web server. Any web server should work. Instructions are included below for some of the more common web servers.
3. Optionally, you can setup a DNS entry to give the website a domain on your network.
## Webserver configurations
- [IIS](#iis)
- [Apache](#apache)
- [Node.js](#nodejs)
- [Python](#python)
- [XAMPP](#xampp)
- [Nginx via Docker](#docker)
### IIS
> For Windows only.
1. Open the **Internet Information Services (IIS) Manager** using one of the methods below.
- From a command prompt, type `start inetmgr`.
- Type `IIS` into the **Windows search** and select **Internet Information Services (IIS) Manager** from the list.
- Open **Control Panel** and navigate to **Control Panel -> All Control Panel Items -> Administrative Tools**. Find **Internet Information Services (IIS) Manager** and double-click it.
2. Expand the tree view on the left and select the **Default Web Site** node.
3. Check the **Manage Website** section on the right side of the dialog to verify the site is running.
- If the **Start** button is disabled, the site is running.
- If the **Start** button is enabled, click it to start the site.
4. With **Default Web Site** selected, click **Explore** in the **Actions** section on the right of the dialog. This will launch Windows Explorer with the root folder for the web server (by default it is `C:\inetpub\wwwroot\`). This is where you should add the content.
5. Copy or move the unreal-engine subfolder from the `public` folder to the web root folder. Make sure to only move the subfolder, not the parent `public` folder. For a default IIS installation, the folder would be at `C:\inetpub\wwwroot\unreal-engine`.
6. Open a web browser and navigate to http://localhost/unreal-engine/ to explore the site.
### Apache
> For Linux, macOS, Windows
1. Install Apache with the appropriate command below for your OS.
- **Ubuntu**: `sudo apt-get install apache2`
- **CentOS/Red Hat**: `sudo yum install httpd`
- **macOS**: No action needed, macOS has Apache preinstalled
2. Start Apache the Apache web server.
- **Ubuntu**: `service apache2 start`
- **CentOS/Red Hat**: `service httpd start`
- **macOS**: `sudo apachectl start`
3. Open a browser and navigate to http://localhost. You will see a basic web page that verifies Apache is running.
5. Copy or move the unreal-engine subfolder from the `public` folder to the document root. This is `/var/www/html` (by default), `/Library/WebServer/Documents` for macOS or the folder specified as `DocumentRoot` in the Apache configuration (`httpd.conf`).
6. Open a web browser and navigate to http://localhost/unreal-engine/ to explore the site.
### Node.js
> For Linux, macOS, Windows
1. [Install Node.js](https://nodejs.org/en/). Any of the most recent LTS versions will work.
2. Copy the two files `package.json` and `rundev.js` from your downloaded folder `install/nodejs/` into the `public` folder. Make sure these individual files are copied directly inside the `public` folder (do not copy the `nodejs` folder itself).
3. From a terminal or command prompt, `cd` into the `public` folder.
4. Run `npm install` to install required dependencies.
5. After installation completes, run `npm start` to start the web server. When the web server starts, a message will indicate which port number you can use to view the site. For example: `Listening on port 8081 open a browser to` http://localhost:8081/unreal-engine/
6. Open a web browser and navigate to http://localhost:8081/unreal-engine/ to explore the site. Note that the port number may change, so substitute the port number reported when starting the server.
### Python
> For Linux, macOS, Windows
**Python 3**
1. Install [Python 3](https://www.python.org/downloads/).
2. From a terminal or command prompt, `cd` into your download's `public` folder.
3. Run `python -m http.server`. When the web server starts, a message will indicate which port number to use to view the site. For example: `Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/)`.
4. Open a web browser and navigate to http://localhost:8000/unreal-engine/ to explore the site. Note that the port number may change, so substitute the port number reported when starting the server.
> NOTE: If you also have Python 2 installed, make sure you are running Python 3.
**Python 2**
Python 2 is no longer supported. These instructions assume you already have Python 2 installed. If not, you should use Python 3.
1. From a terminal or command prompt, `cd` into your download's `public` folder.
2. Run `python -m SimpleHTTPServer`. When the web server starts, a message will indicate which port number to use to view the site. For example: `Serving HTTP on 0.0.0.0 port 8000 ...`.
4. Open a web browser and navigate to http://localhost:8000/unreal-engine/ to explore the site. Note that the port number may change, so substitute the port number reported when starting the server.
### XAMPP
> For Windows
1. [Install XAMPP](https://www.apachefriends.org/index.html).
2. Open the **XAMPP Control Panel** and start the Apache service.
3. Wait for XAMPP to start then click **Explore** to open the XAMPP installation directory in Windows Explorer.
4. Copy or move the unreal-engine subfolder from your download's `public` folder to the XAMPP `htdocs` folder.
5. Open a web browser and navigate to a URL like `http://localhost:80/unreal-engine/` to explore the site. Note that the port number for your server may vary. Click **Configure** in the **XAMPP Control Panel** to edit the port in the `httpd.conf` file.
> For Linux
1. [Install XAMPP](https://www.apachefriends.org/index.html).
2. Open XAMPP and click **Start**.
3. Wait for XAMPP to start then go to **Volumes** and mount the default volume.
4. Click **Explore** to open the volume.
5. Copy or move the unreal-engine subfolder from your download's `public` folder to the `htdocs` folder.
6. You can access the documentation at `{XAMPP_URL}/unreal-engine/`.
### Docker
> For Linux, macOS, Windows
1. [Install Docker for your operating system](https://www.docker.com/get-started).
2. Open the `Docker` app and wait for `Docker Engine` to start.
3. From a terminal or PowerShell (if using Windows), `cd` into your unzipped documentation folder (the one containing the `install`, and `public` subfolders).
4. Run the following command for your OS:
**Unix/macOS/Linux**
```txt
docker run --rm -v $(pwd)/install/docker/:/etc/nginx/conf.d -v $(pwd)/public:/usr/share/nginx/html -p 8000:80 nginx:ma