2012 - GWAN web server
The Slovak original of this document: 2012 - GWAN web server (slovensky).
[0] Basic terms
=================
Host and virtual host
-----------------------
/opt/gwan/0.0.0.0_8080
----------------------
The server listens on all network interfaces on port 8080
----------------------
Ex:
/opt/gwan/192.168.254.11_80
----------------------
The server listens on the IP address 192.168.254.11 and port 80
/opt/gwan/0.0.0.0_8080/#0.0.0.0
-------------------------------
Hostname (domena.sk) or IP address (192.168.254.11)
-------------------------------
#domena.sk - root host
$ina.domena.sk - virtual host
$dalsiadomena.sk - virtual host
Complete example
----------------
listener 1: / gwan / 192.168.254.11_80 / #client35.example (root host)
/ $ares.client35.example (virtual host)
/ $domena.sk (virtual host)
listener 2: / gwan / 192.168.254.11_443 / #client34.example (root host)
/ $domena.eu (virtual host)
Alias for a host or a virtual host
------------------------------------
listener 1: / gwan / 192.168.254.11_80 / #client35.example (root host)
/ #client35.example:client13.example (alias for root host)
listener 1: / gwan / 192.168.254.11_80 / #client35.example (root host)
/ $ares.client35.example (virtual host)
/ $ares.client35.example:alias.client35.example (alias for virtual host)
[1] Basic installation of GwAN
================================
Download and unpack the latest version of GWAN (32 or 64 bit)
-------------------------------------------------------------
# cd /opt
# wget http://www.gwan.com/archives/gwan_linux32-bit.tar.bz2
# wget http://www.gwan.com/archives/gwan_linux64-bit.tar.bz2
Unpack the GWAN server (remove the original package)
----------------------------------------------------
# cd /opt
# tar -xvf ./gwan_linux64-bit.tar.bz2
# rm ./gwan_linux64-bit.tar.bz2
# mv ./gwan_linux64-bit ./gwan
GCC - needed to run ANSI C scripts
----------------------------------
# apt-get install gcc
[2] Basic installation of GwAN - optional packages
====================================================
GOBJC++ - needed to run Objective C and C++ scripts
---------------------------------------------------
# apt-get install gobjc++
JAVAC - needed to run JAVA scripts
----------------------------------
# apt-get install openjdk-6-jdk
SQLITE LIB - needed by scripts that use sqlite3 as their database engine
------------------------------------------------------------------------
# apt-get install libsqlite3-dev
[3] Post-installation preparatory work
========================================
(1) Create the user (gwan) under which the GWAN server will run
(2) Forbid the user "gwan" to log in to the system
-------------------------------------------------------------------
# useradd gwan
# usermod -s /bin/false gwan
(1) For the basic (prepared) configuration, which listens on "0.0.0.0:8080"
(2) and the virtual host "#0.0.0.0"
(3) we turn logging on (the default is OFF)
---------------------------------------------------------------------------
# cd /opt/gwan/0.0.0.0_8080
# cd ./#0.0.0.0
# mv ./_logs/ ./logs
[4] Starting the GWAN server
==============================
Start the GWAN server under the user "gwan" in daemon mode
----------------------------------------------------------
# cd /opt/gwan
# ./gwan -d::gwan
[LINKz]
==========
RioTC - Rio Template Compiler
-----------------------------
http://riotc.blogspot.com/2011/09/welcome.htmlCurrent practice (checked 2026-10)
noteThe article above is kept as it was written in 2012. This section lists what has changed since and what to do instead today.
- Download: both archive URLs in step [1] returned 404 when checked. The vendor's site still exists but answers on plain HTTP only (nothing listens on port 443), so the binary tarball it offers cannot be fetched over an authenticated channel. Do not put a binary obtained that way on an Internet-facing machine.
- Choice of server: for normal use install a web server from your distribution's repositories (nginx, Apache httpd), where security updates arrive through the package manager. Treat the G-WAN steps above as a record of how it was done in 2012.
- Java:
openjdk-6-jdkno longer exists in Debian. The current JDK is installed through thedefault-jdkpackage. - Service account:
useradd gwanfollowed byusermod -s /bin/false gwanis done in one step today, as a system account withnologinas its shell.
$ # useradd --system --shell /usr/sbin/nologin gwan
Sources: