<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.ulyssis.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rockinroel</id>
	<title>ULYSSIS documentation - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.ulyssis.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rockinroel"/>
	<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/Special:Contributions/Rockinroel"/>
	<updated>2026-04-21T02:16:28Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.15</generator>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=268</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=268"/>
		<updated>2016-02-22T20:06:04Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework together with FastCGI. There are many frameworks, ranging from very simple and lightweight, to more complex and feature rich.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CGI scripts need to be executable, otherwise they won't work:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x hello.cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. However, because you're editing the application on a different server than were it is running, you do not have access to the running process. You'll have to create some sort of mechanism to restart the process.&lt;br /&gt;
&lt;br /&gt;
In the Django example below, the starter script has been written so that when it is changed, the application is automatically restarted within 1 second. The same mechanism can be applied to other Python sites. You can change the modification date without actually changing the contents of the starter script by using &amp;lt;tt&amp;gt;touch&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
Or, for Python 3:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv --python=python3&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup6&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os, os.path&lt;br /&gt;
from threading import Thread&lt;br /&gt;
&lt;br /&gt;
this_file = os.path.realpath(__file__)&lt;br /&gt;
&lt;br /&gt;
site_dir = '/home/user/username/mysite'&lt;br /&gt;
sys.path.insert(0, site_dir)&lt;br /&gt;
os.chdir(site_dir)&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
def stat_thread():&lt;br /&gt;
    import time, os, signal&lt;br /&gt;
    start_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
    while True:&lt;br /&gt;
        cur_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
        if cur_mtime != start_mtime:&lt;br /&gt;
            os.kill(os.getpid(), signal.SIGTERM)&lt;br /&gt;
        time.sleep(1)&lt;br /&gt;
&lt;br /&gt;
Thread(target=stat_thread).start()&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.basehttp import get_internal_wsgi_application&lt;br /&gt;
from flup.server.fcgi import WSGIServer&lt;br /&gt;
WSGIServer(get_internal_wsgi_application(), debug=False).run()&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/stable/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [http://flask.pocoo.org/docs/0.10/deploying/fastcgi/ Flask documentation for FastCGI]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=267</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=267"/>
		<updated>2016-02-22T20:04:53Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework together with FastCGI. There are many frameworks, ranging from very simple and lightweight, to more complex and feature rich.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CGI scripts need to be executable, otherwise they won't work:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x hello.cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. However, because you're editing the application on a different server than were it is running, you do not have access to the running process. You'll have to create some sort of mechanism to restart the process.&lt;br /&gt;
&lt;br /&gt;
In the Django example below, the starter script has been written so that when it is changed, the application is automatically restarted within 1 second. The same mechanism can be applied to other Python sites. You can change the modification date without actually changing the contents of the starter script by using &amp;lt;tt&amp;gt;touch&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
Or, for Python 3:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv --python=python3&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup6&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os, os.path&lt;br /&gt;
from threading import Thread&lt;br /&gt;
&lt;br /&gt;
this_file = os.path.realpath(__file__)&lt;br /&gt;
&lt;br /&gt;
site_dir = '/home/user/username/mysite'&lt;br /&gt;
sys.path.insert(0, site_dir)&lt;br /&gt;
os.chdir(site_dir)&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
def stat_thread():&lt;br /&gt;
    import time, os, signal&lt;br /&gt;
    start_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
    while True:&lt;br /&gt;
        cur_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
        if cur_mtime != start_mtime:&lt;br /&gt;
            os.kill(os.getpid(), signal.SIGTERM)&lt;br /&gt;
        time.sleep(1)&lt;br /&gt;
&lt;br /&gt;
Thread(target=stat_thread).start()&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.basehttp import get_internal_wsgi_application&lt;br /&gt;
from flup.server.fcgi import WSGIServer&lt;br /&gt;
WSGIServer(get_internal_wsgi_application(), debug=False).run()&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/stable/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/stable/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=264</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=264"/>
		<updated>2016-02-22T19:57:54Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework together with FastCGI. There are many frameworks, ranging from very simple and lightweight, to more complex and feature rich.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CGI scripts need to be executable, otherwise they won't work:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x hello.cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. However, because you're editing the application on a different server than were it is running, you do not have access to the running process. You'll have to create some sort of mechanism to restart the process.&lt;br /&gt;
&lt;br /&gt;
In the Django example below, the starter script has been written so that when it is changed, the application is automatically restarted within 1 second. The same mechanism can be applied to other Python sites. You can change the modification date without actually changing the contents of the starter script by using &amp;lt;tt&amp;gt;touch&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
Or, for Python 3:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv --python=python3&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup6&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os, os.path&lt;br /&gt;
from threading import Thread&lt;br /&gt;
&lt;br /&gt;
this_file = os.path.realpath(__file__)&lt;br /&gt;
&lt;br /&gt;
site_dir = '/home/user/username/mysite'&lt;br /&gt;
sys.path.insert(0, site_dir)&lt;br /&gt;
os.chdir(site_dir)&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
def stat_thread():&lt;br /&gt;
    import time, os, signal&lt;br /&gt;
    start_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
    while True:&lt;br /&gt;
        cur_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
        if cur_mtime != start_mtime:&lt;br /&gt;
            os.kill(os.getpid(), signal.SIGTERM)&lt;br /&gt;
        time.sleep(1)&lt;br /&gt;
&lt;br /&gt;
Thread(target=stat_thread).start()&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.basehttp import get_internal_wsgi_application&lt;br /&gt;
from flup.server.fcgi import WSGIServer&lt;br /&gt;
WSGIServer(get_internal_wsgi_application(), debug=False).run()&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=253</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=253"/>
		<updated>2015-12-06T09:25:40Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* Restarting your application */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework together with FastCGI. There are many frameworks, ranging from very simple and lightweight, to more complex and feature rich.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CGI scripts need to be executable, otherwise they won't work:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x hello.cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. However, because you're editing the application on a different server than were it is running, you do not have access to the running process. You'll have to create some sort of mechanism to restart the process.&lt;br /&gt;
&lt;br /&gt;
In the Django example below, the starter script has been written so that when it is changed, the application is automatically restarted within 1 second. The same mechanism can be applied to other Python sites. You can change the modification date without actually changing the contents of the starter script by using &amp;lt;tt&amp;gt;touch&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os, os.path&lt;br /&gt;
from threading import Thread&lt;br /&gt;
&lt;br /&gt;
this_file = os.path.realpath(__file__)&lt;br /&gt;
&lt;br /&gt;
site_dir = '/home/user/username/mysite'&lt;br /&gt;
sys.path.insert(0, site_dir)&lt;br /&gt;
os.chdir(site_dir)&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
def stat_thread():&lt;br /&gt;
    import time, os, signal&lt;br /&gt;
    start_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
    while True:&lt;br /&gt;
        cur_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
        if cur_mtime != start_mtime:&lt;br /&gt;
            os.kill(os.getpid(), signal.SIGTERM)&lt;br /&gt;
        time.sleep(1)&lt;br /&gt;
&lt;br /&gt;
Thread(target=stat_thread).start()&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=252</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=252"/>
		<updated>2015-12-06T09:21:02Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* Example: Django */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework together with FastCGI. There are many frameworks, ranging from very simple and lightweight, to more complex and feature rich.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CGI scripts need to be executable, otherwise they won't work:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x hello.cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os, os.path&lt;br /&gt;
from threading import Thread&lt;br /&gt;
&lt;br /&gt;
this_file = os.path.realpath(__file__)&lt;br /&gt;
&lt;br /&gt;
site_dir = '/home/user/username/mysite'&lt;br /&gt;
sys.path.insert(0, site_dir)&lt;br /&gt;
os.chdir(site_dir)&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
def stat_thread():&lt;br /&gt;
    import time, os, signal&lt;br /&gt;
    start_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
    while True:&lt;br /&gt;
        cur_mtime = os.stat(this_file).st_mtime&lt;br /&gt;
        if cur_mtime != start_mtime:&lt;br /&gt;
            os.kill(os.getpid(), signal.SIGTERM)&lt;br /&gt;
        time.sleep(1)&lt;br /&gt;
&lt;br /&gt;
Thread(target=stat_thread).start()&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Why_do_I_have_to_pay_0.00_euro_and_how%3F&amp;diff=208</id>
		<title>Why do I have to pay 0.00 euro and how?</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Why_do_I_have_to_pay_0.00_euro_and_how%3F&amp;diff=208"/>
		<updated>2014-11-11T19:46:23Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you stumbled upon this question, don't worry; you don't have to (and can't) make an empty transfer.&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Getting_Apache_logs&amp;diff=184</id>
		<title>Getting Apache logs</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Getting_Apache_logs&amp;diff=184"/>
		<updated>2014-08-30T17:38:38Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* With FileZilla */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You can find all your apache logs (like the access.log and error.log) on all of our servers in the directory: /var/log/apache_user/''username''&lt;br /&gt;
&lt;br /&gt;
So if your username is ''foobar'' then you can easily access your logs this way:&lt;br /&gt;
 foobar@zap:~$ cd /var/log/apache_user/foobar&lt;br /&gt;
 &lt;br /&gt;
 foobar@zap:/var/log/apache_user/foobar$ ls&lt;br /&gt;
 foobar.ulyssis.be&lt;br /&gt;
 &lt;br /&gt;
 foobar@zap:/var/log/apache_user/foobar$ cd foobar.ulyssis.be&lt;br /&gt;
 &lt;br /&gt;
 foobar@zap:/var/log/apache_user/foobar/foobar.ulyssis.be$ ls&lt;br /&gt;
 access-2014-05-07.log error-2014-05-07.log&lt;br /&gt;
 &lt;br /&gt;
 foobar@zap:/var/log/apache_user/foobar/foobar.ulyssis.be$ tail error-2014-05-07.log &lt;br /&gt;
 [Wed May 07 01:27:14 2014] [error] [client 10.0.0.1] File does not exist: /home/user/foobar/www/favicon.ico&lt;br /&gt;
&lt;br /&gt;
If you can't find your username inside of &amp;lt;code&amp;gt;/var/log/apache_user&amp;lt;/code&amp;gt;, don't worry. If you enter it with &amp;lt;code&amp;gt;cd foobar&amp;lt;/code&amp;gt;, it will automatically appear.&lt;br /&gt;
&lt;br /&gt;
==With FileZilla==&lt;br /&gt;
&lt;br /&gt;
You can also access the log files with an SFTP client, like FileZilla. Just enter&lt;br /&gt;
&amp;lt;tt&amp;gt;/var/log/apache_user/''username''&amp;lt;/tt&amp;gt; (replace ''username'' with your username) on the right hand side, where it says&lt;br /&gt;
&amp;quot;Remote site&amp;quot;, and press &amp;lt;tt&amp;gt;Enter&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
[[File:Logs.png]]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Getting_Apache_logs&amp;diff=183</id>
		<title>Getting Apache logs</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Getting_Apache_logs&amp;diff=183"/>
		<updated>2014-08-30T17:38:11Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You can find all your apache logs (like the access.log and error.log) on all of our servers in the directory: /var/log/apache_user/''username''&lt;br /&gt;
&lt;br /&gt;
So if your username is ''foobar'' then you can easily access your logs this way:&lt;br /&gt;
 foobar@zap:~$ cd /var/log/apache_user/foobar&lt;br /&gt;
 &lt;br /&gt;
 foobar@zap:/var/log/apache_user/foobar$ ls&lt;br /&gt;
 foobar.ulyssis.be&lt;br /&gt;
 &lt;br /&gt;
 foobar@zap:/var/log/apache_user/foobar$ cd foobar.ulyssis.be&lt;br /&gt;
 &lt;br /&gt;
 foobar@zap:/var/log/apache_user/foobar/foobar.ulyssis.be$ ls&lt;br /&gt;
 access-2014-05-07.log error-2014-05-07.log&lt;br /&gt;
 &lt;br /&gt;
 foobar@zap:/var/log/apache_user/foobar/foobar.ulyssis.be$ tail error-2014-05-07.log &lt;br /&gt;
 [Wed May 07 01:27:14 2014] [error] [client 10.0.0.1] File does not exist: /home/user/foobar/www/favicon.ico&lt;br /&gt;
&lt;br /&gt;
If you can't find your username inside of &amp;lt;code&amp;gt;/var/log/apache_user&amp;lt;/code&amp;gt;, don't worry. If you enter it with &amp;lt;code&amp;gt;cd foobar&amp;lt;/code&amp;gt;, it will automatically appear.&lt;br /&gt;
&lt;br /&gt;
==With FileZilla==&lt;br /&gt;
&lt;br /&gt;
You can also access the log files with an SFTP client, like FileZilla. Just enter&lt;br /&gt;
&amp;lt;tt&amp;gt;/var/log/apache_user/''username''&amp;lt;/tt&amp;gt; on the right hand side, where it says&lt;br /&gt;
&amp;quot;Remote site&amp;quot;, and press &amp;lt;tt&amp;gt;Enter&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
[[File:Logs.png]]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=File:Logs.png&amp;diff=182</id>
		<title>File:Logs.png</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=File:Logs.png&amp;diff=182"/>
		<updated>2014-08-30T17:34:19Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Overview&amp;diff=181</id>
		<title>Overview</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Overview&amp;diff=181"/>
		<updated>2014-08-30T17:12:50Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background:#f9f9f9;border:1px solid #ddd;font-size:95%;padding:1.5em;&amp;quot;&amp;gt;&lt;br /&gt;
Welcome to our documentation website. Many of the common procedures and issues our users experience are described here. If you still encounter problems we haven't covered or you just can't seem to get things to work, even though you followed one of our manuals, be free to contact us on ulyssis@ulyssis.org for personal support.&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Account ==&lt;br /&gt;
* [[Registering a new account]]&lt;br /&gt;
* [[Renewing your account]]&lt;br /&gt;
* [[Transferring your account]]&lt;br /&gt;
* [[Help, my account has been disabled]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
== Files ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Using SSHFS]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Webserver ==&lt;br /&gt;
* [[Webserver changes summer 2014]]&lt;br /&gt;
* [[Using your webspace]]&lt;br /&gt;
* [[Using (Fast)CGI for non-PHP websites]]&lt;br /&gt;
* [[Getting Apache logs]]&lt;br /&gt;
* [[Managing PHP errors]]&lt;br /&gt;
* [[Setting PHP options]]&lt;br /&gt;
* [[Adding domain names|Adding domain names (.be, .com, .org, ...)]]&lt;br /&gt;
* [[Getting SSL|Getting SSL (https-security)]]&lt;br /&gt;
* [[Shibboleth|Shibboleth (Centrale KU Leuven Login)]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Databases ==&lt;br /&gt;
* [[Using PostgreSQL]]&lt;br /&gt;
* [[Using MySQL]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== CMSs ==&lt;br /&gt;
* [[Setting up Wordpress]]&lt;br /&gt;
* [[Setting up Drupal]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security &amp;amp; anti-spam ==&lt;br /&gt;
* [[Keeping your website secure]]&lt;br /&gt;
* [[Preventing spam on your website]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Mail ==&lt;br /&gt;
* [[ULYSSIS mail]]&lt;br /&gt;
* [[Forwarders]]&lt;br /&gt;
* [[Add an alias in Gmail]]&lt;br /&gt;
* [[Fetch your KU Leuven email into another email address]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Shell ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Accessing shell servers over SSH]]&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
* [[Useful Linux Commands]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Versioning ==&lt;br /&gt;
* [[Subversion 101]]&lt;br /&gt;
* [[GitLab]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_CGI_for_non-PHP_websites&amp;diff=180</id>
		<title>Using CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_CGI_for_non-PHP_websites&amp;diff=180"/>
		<updated>2014-08-30T17:12:26Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: Rockinroel moved page Using CGI for non-PHP websites to Using (Fast)CGI for non-PHP websites&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Using (Fast)CGI for non-PHP websites]]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=179</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=179"/>
		<updated>2014-08-30T17:12:26Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: Rockinroel moved page Using CGI for non-PHP websites to Using (Fast)CGI for non-PHP websites&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework together with FastCGI. There are many frameworks, ranging from very simple and lightweight, to more complex and feature rich.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CGI scripts need to be executable, otherwise they won't work:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x hello.cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=178</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=178"/>
		<updated>2014-08-30T17:11:47Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* CGI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework together with FastCGI. There are many frameworks, ranging from very simple and lightweight, to more complex and feature rich.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CGI scripts need to be executable, otherwise they won't work:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x hello.cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=177</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=177"/>
		<updated>2014-08-30T17:11:08Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* CGI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework together with FastCGI. There are many frameworks, ranging from very simple and lightweight, to more complex and feature rich.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=176</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=176"/>
		<updated>2014-08-30T17:10:41Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* CGI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework together with FastCGI.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=175</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=175"/>
		<updated>2014-08-30T17:10:08Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* CGI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI. Note, however, that CGI is inefficient and&lt;br /&gt;
in general we recommend you to use a framework with FastCGI.&lt;br /&gt;
&lt;br /&gt;
If, for example, you want Apache to interpret all files with the extension &amp;lt;tt&amp;gt;.cgi&amp;lt;/tt&amp;gt; as CGI scripts, use the following &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file (to be placed in your &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder):&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler cgi-script .cgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's an example of a very simple Python CGI script (called &amp;lt;tt&amp;gt;hello.cgi&amp;lt;/tt&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/usr/bin/env python&lt;br /&gt;
&lt;br /&gt;
print 'Content-Type: text/plain\n'&lt;br /&gt;
print 'Hello world!'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=174</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=174"/>
		<updated>2014-08-30T17:05:41Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* FastCGI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script. Don't forget to make your starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=173</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=173"/>
		<updated>2014-08-30T17:04:38Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* FastCGI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
You'll want to treat this starter script as a &amp;lt;tt&amp;gt;mod_fcgid&amp;lt;/tt&amp;gt; script, and usually, you'll want to redirect everything to this script, so you can use an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file that looks like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ starter.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''starter.fcgi'' with the name of your starter script.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=172</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=172"/>
		<updated>2014-08-30T17:00:43Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* FastCGI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your framework and application. Just do a web search for &amp;quot;''framework'' mod_fcgid&amp;quot;, where you ''framework'' is the framework you're using, and you will find good instructions. There's a Django example below.&lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=171</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=171"/>
		<updated>2014-08-30T16:59:07Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* FastCGI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
In order to use FastCGI, you will generally need a starter script specific to your &lt;br /&gt;
&lt;br /&gt;
===Restarting your application===&lt;br /&gt;
&lt;br /&gt;
If you've changed your application, you will need to restart it for these changes to take effect. In order to do that, you have to set the modification date of the starter script to a more recent date:&lt;br /&gt;
&amp;lt;pre&amp;gt;touch starter.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=170</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=170"/>
		<updated>2014-08-30T16:55:20Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=169</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=169"/>
		<updated>2014-08-30T16:55:02Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* Example: Django */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This guide was based on, and you can find more information in the official Django documentation:&lt;br /&gt;
&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/intro/tutorial01/ The Django tutorial]&lt;br /&gt;
* [https://docs.djangoproject.com/en/1.6/howto/deployment/fastcgi/#apache-shared-hosting Running Django on a shared-hosting provider with Apache]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=168</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=168"/>
		<updated>2014-08-30T16:51:56Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* Example: Django */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Go to ''username''.ulyssis.be (or whatever URL you chose to use), and it should show you the default &amp;quot;Welcome to Django&amp;quot; page.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=167</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=167"/>
		<updated>2014-08-30T16:50:02Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
Replace ''mysite'' with your project's desired name.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Call this script &amp;lt;tt&amp;gt;mysite.fcgi&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Make the starter script executable:&lt;br /&gt;
&amp;lt;pre&amp;gt;chmod +x mysite.fcgi&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=166</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=166"/>
		<updated>2014-08-30T16:48:02Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* FastCGI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;br /&gt;
&lt;br /&gt;
===Example: Django===&lt;br /&gt;
&lt;br /&gt;
If you want to make a website using [https://www.djangoproject.com/ Django], we recommend that you use a [http://virtualenv.readthedocs.org/ virtualenv]. This tool is already preinstalled on our shell servers.&lt;br /&gt;
&lt;br /&gt;
You can use the following steps to get up and running with Django at ULYSSIS:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Accessing shell servers over SSH|Log in to a shell server]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new virtualenv, you can create one in &amp;lt;tt&amp;gt;~/.venv&amp;lt;/tt&amp;gt;, for example:&lt;br /&gt;
&amp;lt;pre&amp;gt;virtualenv ~/.venv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Activate this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;. ~/.venv/bin/activate&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install Django inside of this virtualenv:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install django&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create a new Django project:&lt;br /&gt;
&amp;lt;pre&amp;gt;django-admin.py startproject mysite&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Install flup for FastCGI:&lt;br /&gt;
&amp;lt;pre&amp;gt;pip install flup&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Put an &amp;lt;tt&amp;gt;.htaccess&amp;lt;/tt&amp;gt; file in your site's directory, e.g. the &amp;lt;tt&amp;gt;www&amp;lt;/tt&amp;gt; folder:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Options +ExecCGI&lt;br /&gt;
AddHandler fcgid-script .fcgi&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Create the starter script (replace ''user'' with org if you are an organization, and ''username'' with your ULYSSIS username):&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/home/user/username/.venv/bin/python&lt;br /&gt;
&lt;br /&gt;
import sys, os&lt;br /&gt;
&lt;br /&gt;
sys.path.insert(0, '/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.chdir('/home/user/username/mysite')&lt;br /&gt;
&lt;br /&gt;
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'&lt;br /&gt;
&lt;br /&gt;
from django.core.servers.fastcgi import runfastcgi&lt;br /&gt;
runfastcgi(method=&amp;quot;threaded&amp;quot;, daemonize=&amp;quot;false&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=165</id>
		<title>Using (Fast)CGI for non-PHP websites</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_(Fast)CGI_for_non-PHP_websites&amp;diff=165"/>
		<updated>2014-08-30T15:22:15Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: Created page with &amp;quot;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI s...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You're not stuck with PHP if you want to make a dynamic website. You can use all sorts of frameworks and programming languages with ULYSSIS, as long as it has CGI or FastCGI support.&lt;br /&gt;
&lt;br /&gt;
If you want to use a certain programming language or framework, and you can't get it to work, don't hesitate to contact us at [mailto:ulyssis@ulyssis.org ulyssis@ulyssis.org].&lt;br /&gt;
&lt;br /&gt;
==CGI==&lt;br /&gt;
&lt;br /&gt;
CGI is a very easy and simple way to create a dynamic website. We use Apache's [http://httpd.apache.org/docs/2.4/mod/mod_cgid.html mod_cgid] to provide support for CGI.&lt;br /&gt;
&lt;br /&gt;
==FastCGI==&lt;br /&gt;
&lt;br /&gt;
We use Apache's [http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html mod_fcgid] to provide support for FastCGI.&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Mailbox&amp;diff=164</id>
		<title>Mailbox</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Mailbox&amp;diff=164"/>
		<updated>2014-08-30T14:51:09Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* SMTP */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Your ulyssis account includes an email address: &amp;lt;code&amp;gt;''username''@ulyssis.org&amp;lt;/code&amp;gt;. It is important you check your ulyssis mail regularly, because all important information will be sent to this address. You can check your e-mail using the webmail or an email client of your own.&lt;br /&gt;
&lt;br /&gt;
==Webmail==&lt;br /&gt;
You can access your mail via a webinterface: https://webmail.ulyssis.org. Use your username and password to enter the website.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==POP and IMAP access==&lt;br /&gt;
You can access your ulyssis mail by POP or IMAP protocol. The configuration parameters are:&lt;br /&gt;
&lt;br /&gt;
* '''server''': &amp;lt;tt&amp;gt;mail.ulyssis.org&amp;lt;/tt&amp;gt;&lt;br /&gt;
* '''username''': ''your ULYSSIS username''&lt;br /&gt;
* '''password''': ''your ULYSSIS password''&lt;br /&gt;
* '''security''': SSL&lt;br /&gt;
&lt;br /&gt;
==SMTP==&lt;br /&gt;
ULYSSIS doesn't offer SMTP. Instead, you can use KULeuven's SMTP server:&lt;br /&gt;
&lt;br /&gt;
* '''server''': &amp;lt;tt&amp;gt;smtp.ulyssis.be&amp;lt;/tt&amp;gt;&lt;br /&gt;
* '''port''': 465&lt;br /&gt;
* '''username''': ''your student id''&lt;br /&gt;
* '''password''': ''your KULeuven password''&lt;br /&gt;
* '''security''': SSL&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Mailbox&amp;diff=163</id>
		<title>Mailbox</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Mailbox&amp;diff=163"/>
		<updated>2014-08-30T14:50:53Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* POP and IMAP access */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Your ulyssis account includes an email address: &amp;lt;code&amp;gt;''username''@ulyssis.org&amp;lt;/code&amp;gt;. It is important you check your ulyssis mail regularly, because all important information will be sent to this address. You can check your e-mail using the webmail or an email client of your own.&lt;br /&gt;
&lt;br /&gt;
==Webmail==&lt;br /&gt;
You can access your mail via a webinterface: https://webmail.ulyssis.org. Use your username and password to enter the website.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==POP and IMAP access==&lt;br /&gt;
You can access your ulyssis mail by POP or IMAP protocol. The configuration parameters are:&lt;br /&gt;
&lt;br /&gt;
* '''server''': &amp;lt;tt&amp;gt;mail.ulyssis.org&amp;lt;/tt&amp;gt;&lt;br /&gt;
* '''username''': ''your ULYSSIS username''&lt;br /&gt;
* '''password''': ''your ULYSSIS password''&lt;br /&gt;
* '''security''': SSL&lt;br /&gt;
&lt;br /&gt;
==SMTP==&lt;br /&gt;
ULYSSIS doesn't offer SMTP. Instead, you can use KULeuven's SMTP server:&lt;br /&gt;
&lt;br /&gt;
* '''server''': &amp;lt;tt&amp;gt;smtp.ulyssis.be&amp;lt;/tt&amp;gt;&lt;br /&gt;
* '''port''': 465&lt;br /&gt;
* '''username''': your student id&lt;br /&gt;
* '''password''': your KULeuven password&lt;br /&gt;
* '''security''': SSL&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Mailbox&amp;diff=162</id>
		<title>Mailbox</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Mailbox&amp;diff=162"/>
		<updated>2014-08-30T14:49:09Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Your ulyssis account includes an email address: &amp;lt;code&amp;gt;''username''@ulyssis.org&amp;lt;/code&amp;gt;. It is important you check your ulyssis mail regularly, because all important information will be sent to this address. You can check your e-mail using the webmail or an email client of your own.&lt;br /&gt;
&lt;br /&gt;
==Webmail==&lt;br /&gt;
You can access your mail via a webinterface: https://webmail.ulyssis.org. Use your username and password to enter the website.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==POP and IMAP access==&lt;br /&gt;
You can access your ulyssis mail by POP or IMAP protocol. The configuration parameters are:&lt;br /&gt;
&lt;br /&gt;
* '''server''': &amp;lt;tt&amp;gt;mail.ulyssis.org&amp;lt;/tt&amp;gt;&lt;br /&gt;
* '''username''': ''your username''&lt;br /&gt;
* '''security''': SSL&lt;br /&gt;
&lt;br /&gt;
==SMTP==&lt;br /&gt;
ULYSSIS doesn't offer SMTP. Instead, you can use KULeuven's SMTP server:&lt;br /&gt;
&lt;br /&gt;
* '''server''': &amp;lt;tt&amp;gt;smtp.ulyssis.be&amp;lt;/tt&amp;gt;&lt;br /&gt;
* '''port''': 465&lt;br /&gt;
* '''username''': your student id&lt;br /&gt;
* '''password''': your KULeuven password&lt;br /&gt;
* '''security''': SSL&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Mailbox&amp;diff=161</id>
		<title>Mailbox</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Mailbox&amp;diff=161"/>
		<updated>2014-08-30T14:48:30Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Your ulyssis account includes an email address: &amp;lt;code&amp;gt;''username''@ulyssis.org&amp;lt;/code&amp;gt;. It is important you check your ulyssis mail regularly, because all important information will be sent to this address. You can check your e-mail using the webmail or an email client of your own.&lt;br /&gt;
&lt;br /&gt;
==Webmail==&lt;br /&gt;
You can access your mail via a webinterface: https://webmail.ulyssis.org. Use your username and password to enter the website.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==POP and IMAP access==&lt;br /&gt;
You can access your ulyssis mail by POP or IMAP protocol. The configuration parameters are:&lt;br /&gt;
&lt;br /&gt;
* '''server''': &amp;lt;tt&amp;gt;mail.ulyssis.org&amp;lt;/tt&amp;gt;&lt;br /&gt;
* '''username''': ''your username''&lt;br /&gt;
* '''security''': SSL&lt;br /&gt;
&lt;br /&gt;
==SMTP==&lt;br /&gt;
ULYSSIS doesn't offer SMTP. Instead, you can use the KULeuven's SMTP server:&lt;br /&gt;
&lt;br /&gt;
* '''server''': &amp;lt;tt&amp;gt;smtp.ulyssis.be&amp;lt;/tt&amp;gt;&lt;br /&gt;
* '''port''': 465&lt;br /&gt;
* '''username''': your student id&lt;br /&gt;
* '''password''': your KULeuven password&lt;br /&gt;
* '''security''': SSL&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=154</id>
		<title>Add an alias in Gmail</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=154"/>
		<updated>2014-08-09T10:17:48Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You may want to send e-mail from Gmail using your @ulyssis.org-address, or another domain name that you use for your account. Gmail allows you to do this, but asks for SMTP info. We don't provide SMTP on our own mail server, but you can use the SMTP servers of the KU Leuven.&lt;br /&gt;
&lt;br /&gt;
# In Gmail, go to '''Settings''' (in Dutch: '''Instellingen''').&lt;br /&gt;
# Go to the tab '''Accounts and Import''' (in Dutch: '''Accounts en import''')&lt;br /&gt;
# Under '''Send mail as:''' ('''E-mailberichten sturen vanaf'''), click on: '''Add another email address you own''' ('''Nog een e-mailadres toevoegen waarvan je eigenaar bent''').&lt;br /&gt;
# Fill in your name and the e-mail address, and check '''Treat as an alias.''' ('''Beschouwen als alias.''') More info: https://support.google.com/a/answer/1710338&lt;br /&gt;
# Click on '''Next step''' ('''Volgende stap''').&lt;br /&gt;
# Fill in the following information SMTP information (https://admin.kuleuven.be/icts/services/email/begrippen):&lt;br /&gt;
#* '''SMTP server''': '''smtps.kuleuven.be'''&lt;br /&gt;
#* '''port''': 465&lt;br /&gt;
#* '''Username''': your student id&lt;br /&gt;
#* '''Password''': your KU Leuven password&lt;br /&gt;
#* SSL&lt;br /&gt;
# Press on '''Add Account''' ('''Account toevoegen''').&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=153</id>
		<title>Add an alias in Gmail</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=153"/>
		<updated>2014-08-09T10:15:36Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;# In Gmail, go to '''Settings''' (in Dutch: '''Instellingen''').&lt;br /&gt;
# Go to the tab '''Accounts and Import''' (in Dutch: '''Accounts en import''')&lt;br /&gt;
# Under '''Send mail as:''' ('''E-mailberichten sturen vanaf'''), click on: '''Add another email address you own''' ('''Nog een e-mailadres toevoegen waarvan je eigenaar bent''').&lt;br /&gt;
# Fill in your name and the e-mail address, and check '''Treat as an alias.''' ('''Beschouwen als alias.''') More info: https://support.google.com/a/answer/1710338&lt;br /&gt;
# Click on '''Next step''' ('''Volgende stap''').&lt;br /&gt;
# Fill in the following information SMTP information (https://admin.kuleuven.be/icts/services/email/begrippen):&lt;br /&gt;
#* '''SMTP server''': '''smtps.kuleuven.be'''&lt;br /&gt;
#* '''port''': 465&lt;br /&gt;
#* '''Username''': your student id&lt;br /&gt;
#* '''Password''': your KU Leuven password&lt;br /&gt;
#* SSL&lt;br /&gt;
# Press on '''Add Account''' ('''Account toevoegen''').&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=152</id>
		<title>Add an alias in Gmail</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=152"/>
		<updated>2014-08-09T10:14:17Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* In Gmail, go to '''Settings''' (in Dutch: '''Instellingen''').&lt;br /&gt;
* Go to the tab '''Accounts and Import''' (in Dutch: '''Accounts en import''')&lt;br /&gt;
* Under '''Send mail as:''' ('''E-mailberichten sturen vanaf'''), click on: '''Add another email address you own''' ('''Nog een e-mailadres toevoegen waarvan je eigenaar bent''').&lt;br /&gt;
* Fill in your name and the e-mail address, and check '''Treat as an alias.''' ('''Beschouwen als alias.''') More info: https://support.google.com/a/answer/1710338&lt;br /&gt;
* Click on '''Next step''' ('''Volgende stap''').&lt;br /&gt;
* Fill in the following information SMTP information (https://admin.kuleuven.be/icts/services/email/begrippen):&lt;br /&gt;
** '''SMTP server''': '''smtps.kuleuven.be'''&lt;br /&gt;
** '''port''': 465&lt;br /&gt;
** '''Username''': your student id&lt;br /&gt;
** '''Password''': your KU Leuven password&lt;br /&gt;
** SSL&lt;br /&gt;
Press on '''Add Account''' ('''Account toevoegen''').&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=151</id>
		<title>Add an alias in Gmail</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=151"/>
		<updated>2014-08-09T10:13:28Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* In Gmail, go to '''Settings''' (in Dutch: '''Instellingen''').&lt;br /&gt;
* Go to the tab '''Accounts and Import''' (in Dutch: '''Accounts en import''')&lt;br /&gt;
* Under '''Send mail as:''' ('''E-mailberichten sturen vanaf'''), click on: '''Add another email address you own''' ('''Nog een e-mailadres toevoegen waarvan je eigenaar bent''').&lt;br /&gt;
* Fill in your name and the e-mail address, and check '''Treat as an alias.''' ('''Beschouwen als alias.''') More info: https://support.google.com/a/answer/1710338&lt;br /&gt;
* Click on '''Next step''' ('''Volgende stap''').&lt;br /&gt;
* Fill in the following information SMTP information (https://admin.kuleuven.be/icts/services/email/begrippen):&lt;br /&gt;
** '''SMTP server''': '''smtp.kuleuven.be''' or '''smtps.kuleuven.be'''&lt;br /&gt;
** '''port''': 443 or 465&lt;br /&gt;
** '''Username''': your student id&lt;br /&gt;
** '''Password''': your KU Leuven password&lt;br /&gt;
** SSL&lt;br /&gt;
Press on '''Add Account''' ('''Account toevoegen''').&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=150</id>
		<title>Add an alias in Gmail</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=150"/>
		<updated>2014-08-08T21:03:44Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* In Gmail, go to '''Settings''' (in Dutch: '''Instellingen''').&lt;br /&gt;
* Go to the tab '''Accounts and Import''' (in Dutch: '''Accounts en import''')&lt;br /&gt;
* Under '''Send mail as:''' ('''E-mailberichten sturen vanaf'''), click on: '''Add another email address you own''' ('''Nog een e-mailadres toevoegen waarvan je eigenaar bent''').&lt;br /&gt;
* Fill in your name and the e-mail address, and check '''Treat as an alias.''' ('''Beschouwen als alias.''') More info: https://support.google.com/a/answer/1710338&lt;br /&gt;
* Click on '''Next step''' ('''Volgende stap''').&lt;br /&gt;
* Fill in the following information SMTP information (https://admin.kuleuven.be/icts/services/email/begrippen):&lt;br /&gt;
** '''SMTP server''': '''smtp.kuleuven.be''' or '''smtps.kuleuven.be'''&lt;br /&gt;
** '''port''': 443 or 465&lt;br /&gt;
** '''Username''': your student id&lt;br /&gt;
** '''Password''': password_of_studentnumber or simply '''paswoord'''&lt;br /&gt;
** SSL&lt;br /&gt;
Press on '''Add Account''' ('''Account toevoegen''').&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Overview&amp;diff=149</id>
		<title>Overview</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Overview&amp;diff=149"/>
		<updated>2014-08-08T20:55:43Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background:#f9f9f9;border:1px solid #ddd;font-size:95%;padding:1.5em;&amp;quot;&amp;gt;&lt;br /&gt;
Welcome to our documentation website. Many of the common procedures and issues our users experience are described here. If you still encounter problems we haven't covered or you just can't seem to get things to work, even though you followed one of our manuals, be free to contact us on ulyssis@ulyssis.org for personal support.&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Account ==&lt;br /&gt;
* [[Registering a new account]]&lt;br /&gt;
* [[Renewing your account]]&lt;br /&gt;
* [[Transferring your account]]&lt;br /&gt;
* [[Help, my account has been disabled]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
== Files ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Using SSHFS]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Webserver ==&lt;br /&gt;
* [[Webserver changes summer 2014]]&lt;br /&gt;
* [[Using your webspace]]&lt;br /&gt;
* [[Using CGI for non-PHP websites]]&lt;br /&gt;
* [[Getting Apache logs]]&lt;br /&gt;
* [[Managing PHP errors]]&lt;br /&gt;
* [[Setting PHP options]]&lt;br /&gt;
* [[Adding domain names|Adding domain names (.be, .com, .org, ...)]]&lt;br /&gt;
* [[Getting SSL|Getting SSL (https-security)]]&lt;br /&gt;
* [[Shibboleth|Shibboleth (Centrale KU Leuven Login)]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Databases ==&lt;br /&gt;
* [[Using PostgreSQL]]&lt;br /&gt;
* [[Using MySQL]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== CMSs ==&lt;br /&gt;
* [[Setting up Wordpress]]&lt;br /&gt;
* [[Setting up Drupal]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security &amp;amp; anti-spam ==&lt;br /&gt;
* [[Keeping your website secure]]&lt;br /&gt;
* [[Preventing spam on your website]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Mail ==&lt;br /&gt;
* [[ULYSSIS mail]]&lt;br /&gt;
* [[Forwarders]]&lt;br /&gt;
* [[Add an alias in Gmail]]&lt;br /&gt;
* [[Fetch your KU Leuven email into another email address]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Shell ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Accessing shell servers over SSH]]&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
* [[Useful Linux Commands]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Versioning ==&lt;br /&gt;
* [[Subversion 101]]&lt;br /&gt;
* [[GitLab]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Alias_toevoegen_in_Gmail&amp;diff=148</id>
		<title>Alias toevoegen in Gmail</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Alias_toevoegen_in_Gmail&amp;diff=148"/>
		<updated>2014-08-08T20:55:18Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: Rockinroel moved page Alias toevoegen in Gmail to Add an alias in Gmail&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Add an alias in Gmail]]&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=147</id>
		<title>Add an alias in Gmail</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Add_an_alias_in_Gmail&amp;diff=147"/>
		<updated>2014-08-08T20:55:18Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: Rockinroel moved page Alias toevoegen in Gmail to Add an alias in Gmail&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* in Gmail, go to '''Instellingen'''.&lt;br /&gt;
* go to the tab '''Accounts en import'''&lt;br /&gt;
* press here underneath '''E-mailberichten sturen vanaf''' on '''Nog een e-mailadres toevoegen waarvan je eigenaar bent'''&lt;br /&gt;
* fill in your name and mail address and check off '''Beschouwen als alias.''' (more information: http://support.google.com/mail/bin/answer.py?ctx=gmail&amp;amp;answer=1710338&amp;amp;hl=nl&amp;amp;authuser=0)&lt;br /&gt;
Press then on '''Volgende stap'''.&lt;br /&gt;
* SMTP information (https://admin.kuleuven.be/icts/services/email/begrippen):&lt;br /&gt;
** '''SMTP server''': '''smtp.kuleuven.be''' or '''smtps.kuleuven.be'''&lt;br /&gt;
** '''port''': 443 or 465&lt;br /&gt;
** '''username''': studentennumber&lt;br /&gt;
** '''paswoord''': password_of_studentnumber or simply '''paswoord'''&lt;br /&gt;
** SSL&lt;br /&gt;
Press on '''Account toevoegen'''.&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=GitLab&amp;diff=131</id>
		<title>GitLab</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=GitLab&amp;diff=131"/>
		<updated>2014-06-23T19:14:03Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you want to use [http://git-scm.com/ git] for version control to work privately on personal projects, or collaborate with others on projects, you can use GitLab for central repositories, and for tracking bugs.&lt;br /&gt;
&lt;br /&gt;
= Accessing GitLab =&lt;br /&gt;
&lt;br /&gt;
You can access our GitLab server at https://gitlab.ulyssis.org.&lt;br /&gt;
&lt;br /&gt;
You can log in with your standard ULYSSIS username and password.&lt;br /&gt;
&lt;br /&gt;
= Getting started with Git =&lt;br /&gt;
&lt;br /&gt;
If you want to get acquainted with git, these are good free resources:&lt;br /&gt;
&lt;br /&gt;
* [https://try.github.io Try Git]: an interactive introduction to git&lt;br /&gt;
* [http://git-scm.com/book Pro Git]: a book that you can read for free online&lt;br /&gt;
* [http://git-scm.com/docs The official Git reference documentation]&lt;br /&gt;
&lt;br /&gt;
= Guest users =&lt;br /&gt;
&lt;br /&gt;
Sadly, we do not provide guest user support for GitLab yet, as we do for Subversion. Everyone who works on your project will have to have their own ULYSSIS account. We plan to provide this feature some day, but not in the near future.&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Setting_up_WordPress&amp;diff=130</id>
		<title>Setting up WordPress</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Setting_up_WordPress&amp;diff=130"/>
		<updated>2014-06-22T14:20:33Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* Setting up multiple instances of Wordpress */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Wordpress installeren gaat zeker gemakkelijk op onze servers==&lt;br /&gt;
&lt;br /&gt;
Je downloadt het installatiebestand van de [http://wordpress.org wordpress-site].&lt;br /&gt;
&lt;br /&gt;
Hierbij krijg je een gecomprimeerd bestand (.tar.gz of .zip) dit pak je uit.&lt;br /&gt;
&lt;br /&gt;
Je krijgt dan een map met bestanden, deze bestanden (en dus niet de map) kopieer je via filezilla of een ander ftp programma naar je www-map op je shellaccount.&lt;br /&gt;
&lt;br /&gt;
Hierna surf je naar je account, dus naar username.ulyssis.be, je krijgt hier een melding dat je je wp-config.php nog moet aanmaken, het gemakkelijkste is gewoon de wizard blijven volgen, klik dus op: ''Create a Configuration File''.&lt;br /&gt;
&lt;br /&gt;
Daarna op ''Let's go!'' waarna je gegevens van je database gaat moeten invullen:&lt;br /&gt;
&lt;br /&gt;
* '''Database Name: '''als je nog geen mysql database of user hebt aangemaakt op UCC dan moet je dat daar doen. De standaard database is dan: username_username.&lt;br /&gt;
* '''User Name: '''dit is de naam die je hebt opgegven tijdens het maken van je mysql account, vaak is deze hetzelfde als je gebruikersnaam bij ULYSSIS.&lt;br /&gt;
* '''Password: '''het wachtwoord dat je hebt opgegven bij de aanmaak van je mysql account&lt;br /&gt;
* '''Database Host: '''dit is &amp;lt;code&amp;gt;mysql.ulyssis.org&amp;lt;/code&amp;gt;&lt;br /&gt;
* Het laatste veld verander je niet.&lt;br /&gt;
&lt;br /&gt;
Vervolgens krijg je de volgende error: ''Sorry, but I can’t write the &amp;lt;code&amp;gt;wp-config.php&amp;lt;/code&amp;gt; file.'' Maar geen paniek, de tekst die WordPress gemaakt heeft is hetgene wat we nodig hebben. Kopieer deze tekst, sla dit op in een bestand &amp;lt;code&amp;gt;wp-config.php&amp;lt;/code&amp;gt;. Dit bestand zet je dan weer via Filezilla over naar je www-directory.&lt;br /&gt;
&lt;br /&gt;
Klik hierna op ''Run The install.'' Hier kan je dan de laatste gegevens invullen.&lt;br /&gt;
&lt;br /&gt;
Daarna zal de installatie zichzelf uitvoeren en voilà, je hebt wordpress geïnstalleerd.&lt;br /&gt;
&lt;br /&gt;
==Setting up multiple instances of Wordpress==&lt;br /&gt;
&lt;br /&gt;
If you want to have multiple instances of a Wordpress site then you the create a new folder in your homedir from your shell account. Then you make a new virtual host for this directory in UCC.&lt;br /&gt;
&lt;br /&gt;
Name: alias.username.ulyssis.be&lt;br /&gt;
Document root: /home/user/username/new_folder&lt;br /&gt;
&lt;br /&gt;
From now on you do al the same steps as for a regular wordpress installation.&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Setting_up_WordPress&amp;diff=129</id>
		<title>Setting up WordPress</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Setting_up_WordPress&amp;diff=129"/>
		<updated>2014-06-22T14:20:07Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* Setting up multiple instance of Wordpress */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Wordpress installeren gaat zeker gemakkelijk op onze servers==&lt;br /&gt;
&lt;br /&gt;
Je downloadt het installatiebestand van de [http://wordpress.org wordpress-site].&lt;br /&gt;
&lt;br /&gt;
Hierbij krijg je een gecomprimeerd bestand (.tar.gz of .zip) dit pak je uit.&lt;br /&gt;
&lt;br /&gt;
Je krijgt dan een map met bestanden, deze bestanden (en dus niet de map) kopieer je via filezilla of een ander ftp programma naar je www-map op je shellaccount.&lt;br /&gt;
&lt;br /&gt;
Hierna surf je naar je account, dus naar username.ulyssis.be, je krijgt hier een melding dat je je wp-config.php nog moet aanmaken, het gemakkelijkste is gewoon de wizard blijven volgen, klik dus op: ''Create a Configuration File''.&lt;br /&gt;
&lt;br /&gt;
Daarna op ''Let's go!'' waarna je gegevens van je database gaat moeten invullen:&lt;br /&gt;
&lt;br /&gt;
* '''Database Name: '''als je nog geen mysql database of user hebt aangemaakt op UCC dan moet je dat daar doen. De standaard database is dan: username_username.&lt;br /&gt;
* '''User Name: '''dit is de naam die je hebt opgegven tijdens het maken van je mysql account, vaak is deze hetzelfde als je gebruikersnaam bij ULYSSIS.&lt;br /&gt;
* '''Password: '''het wachtwoord dat je hebt opgegven bij de aanmaak van je mysql account&lt;br /&gt;
* '''Database Host: '''dit is &amp;lt;code&amp;gt;mysql.ulyssis.org&amp;lt;/code&amp;gt;&lt;br /&gt;
* Het laatste veld verander je niet.&lt;br /&gt;
&lt;br /&gt;
Vervolgens krijg je de volgende error: ''Sorry, but I can’t write the &amp;lt;code&amp;gt;wp-config.php&amp;lt;/code&amp;gt; file.'' Maar geen paniek, de tekst die WordPress gemaakt heeft is hetgene wat we nodig hebben. Kopieer deze tekst, sla dit op in een bestand &amp;lt;code&amp;gt;wp-config.php&amp;lt;/code&amp;gt;. Dit bestand zet je dan weer via Filezilla over naar je www-directory.&lt;br /&gt;
&lt;br /&gt;
Klik hierna op ''Run The install.'' Hier kan je dan de laatste gegevens invullen.&lt;br /&gt;
&lt;br /&gt;
Daarna zal de installatie zichzelf uitvoeren en voilà, je hebt wordpress geïnstalleerd.&lt;br /&gt;
&lt;br /&gt;
==Setting up multiple instances of Wordpress==&lt;br /&gt;
&lt;br /&gt;
If you want to have multiple instances of a Wordpress site then you the create a new folder in your homedir from you shell account. Then you make a new virtual host for this directory in UCC.&lt;br /&gt;
&lt;br /&gt;
Name: alias.username.ulyssis.be&lt;br /&gt;
Document root: /home/user/username/new_folder&lt;br /&gt;
&lt;br /&gt;
From now on you do al the same steps as for a regular wordpress installation.&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Overview&amp;diff=116</id>
		<title>Overview</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Overview&amp;diff=116"/>
		<updated>2014-06-18T19:40:24Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* Webserver */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background:#f9f9f9;border:1px solid #ddd;font-size:95%;padding:1.5em;&amp;quot;&amp;gt;&lt;br /&gt;
Welcome to our documentation website. Many of the common procedures and issues our users experience are described here. If you still encounter problems we haven't covered or you just can't seem to get things to work, even though you followed one of our manuals, be free to contact us on ulyssis@ulyssis.org for personal support.&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Account ==&lt;br /&gt;
* [[Registering a new account]]&lt;br /&gt;
* [[Renewing your account]]&lt;br /&gt;
* [[Transferring your account]]&lt;br /&gt;
* [[Help, my account has been disabled]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
== Files ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Using SSHFS]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Webserver ==&lt;br /&gt;
* [[Webserver changes summer 2014]]&lt;br /&gt;
* [[Using your webspace]]&lt;br /&gt;
* [[Using CGI for non-PHP websites]]&lt;br /&gt;
* [[Getting Apache logs]]&lt;br /&gt;
* [[Managing PHP errors]]&lt;br /&gt;
* [[Adding domain names|Adding domain names (.be, .com, .org, ...)]]&lt;br /&gt;
* [[Getting SSL|Getting SSL (https-security)]]&lt;br /&gt;
* [[Shibboleth|Shibboleth (Centrale KU Leuven Login)]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Databases ==&lt;br /&gt;
* [[Using PostgreSQL]]&lt;br /&gt;
* [[Using MySQL]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== CMSs ==&lt;br /&gt;
* [[Setting up Wordpress]]&lt;br /&gt;
* [[Setting up Drupal]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security &amp;amp; anti-spam ==&lt;br /&gt;
* [[Keeping your website secure]]&lt;br /&gt;
* [[Preventing spam on your website]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Mail ==&lt;br /&gt;
* [[ULYSSIS mail]]&lt;br /&gt;
* [[Forwarders]]&lt;br /&gt;
* [[Fetch your KU Leuven email into another email address]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
== Shell ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Accessing shell servers over SSH]]&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
* [[Useful Linux Commands]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Versioning ==&lt;br /&gt;
* [[Subversion 101]]&lt;br /&gt;
* [[GitLab]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=File:Uploads_attrs.png&amp;diff=108</id>
		<title>File:Uploads attrs.png</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=File:Uploads_attrs.png&amp;diff=108"/>
		<updated>2014-06-16T17:55:26Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=File:Uploads_dropdown.png&amp;diff=107</id>
		<title>File:Uploads dropdown.png</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=File:Uploads_dropdown.png&amp;diff=107"/>
		<updated>2014-06-16T17:55:12Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=File:Config-php_attrs.png&amp;diff=106</id>
		<title>File:Config-php attrs.png</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=File:Config-php_attrs.png&amp;diff=106"/>
		<updated>2014-06-16T17:54:56Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=File:Config-php_dropdown.png&amp;diff=105</id>
		<title>File:Config-php dropdown.png</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=File:Config-php_dropdown.png&amp;diff=105"/>
		<updated>2014-06-16T17:54:38Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Overview&amp;diff=99</id>
		<title>Overview</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Overview&amp;diff=99"/>
		<updated>2014-06-15T20:40:34Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* Webserver */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background:#f9f9f9;border:1px solid #ddd;font-size:95%;padding:1.5em;&amp;quot;&amp;gt;&lt;br /&gt;
Welcome to our documentation website. Many of the common procedures and issues our users experience are described here. If you still encounter problems we haven't covered or you just can't seem to get things to work, even though you followed one of our manuals, be free to contact us on ulyssis@ulyssis.org for personal support.&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Account ==&lt;br /&gt;
* [[Registering a new account]]&lt;br /&gt;
* [[Renewing your account]]&lt;br /&gt;
* [[Transferring your account]]&lt;br /&gt;
* [[Help, my account has been disabled]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
== Files ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Using SSHFS]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Webserver ==&lt;br /&gt;
* [[Using your webspace]]&lt;br /&gt;
* [[Using CGI for non-PHP websites]]&lt;br /&gt;
* [[Getting Apache logs]]&lt;br /&gt;
* [[Managing PHP errors]]&lt;br /&gt;
* [[Adding domain names|Adding domain names (.be, .com, .org, ...)]]&lt;br /&gt;
* [[Getting SSL|Getting SSL (https-security)]]&lt;br /&gt;
* [[Shibboleth|Shibboleth (Centrale KU Leuven Login)]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Databases ==&lt;br /&gt;
* [[Using PostgreSQL]]&lt;br /&gt;
* [[Using MySQL]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== CMSs ==&lt;br /&gt;
* [[Setting up Wordpress]]&lt;br /&gt;
* [[Setting up Drupal]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security &amp;amp; anti-spam ==&lt;br /&gt;
* [[Keeping your website secure]]&lt;br /&gt;
* [[Preventing spam on your website]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Mail ==&lt;br /&gt;
* [[ULYSSIS mail]]&lt;br /&gt;
* [[Forwarders]]&lt;br /&gt;
* [[Fetch your KU Leuven email into another email address]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
== Shell ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Accessing shell servers over SSH]]&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
* [[Useful Linux Commands]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Versioning ==&lt;br /&gt;
* [[Subversion 101]]&lt;br /&gt;
* [[GitLab]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Overview&amp;diff=98</id>
		<title>Overview</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Overview&amp;diff=98"/>
		<updated>2014-06-01T09:22:30Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background:#f9f9f9;border:1px solid #ddd;font-size:95%;padding:1.5em;&amp;quot;&amp;gt;&lt;br /&gt;
Welcome to our documentation website. Many of the common procedures and issues our users experience are described here. If you still encounter problems we haven't covered or you just can't seem to get things to work, even though you followed one of our manuals, be free to contact us on ulyssis@ulyssis.org for personal support.&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Account ==&lt;br /&gt;
* [[Registering a new account]]&lt;br /&gt;
* [[Renewing your account]]&lt;br /&gt;
* [[Transferring your account]]&lt;br /&gt;
* [[Help, my account has been disabled]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
== Files ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Using SSHFS]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Webserver ==&lt;br /&gt;
* [[Webserver changes summer 2014]]&lt;br /&gt;
* [[Using your webspace]]&lt;br /&gt;
* [[Using CGI for non-PHP websites]]&lt;br /&gt;
* [[Getting Apache logs]]&lt;br /&gt;
* [[Managing PHP errors]]&lt;br /&gt;
* [[Adding domain names|Adding domain names (.be, .com, .org, ...)]]&lt;br /&gt;
* [[Getting SSL|Getting SSL (https-security)]]&lt;br /&gt;
* [[Shibboleth|Shibboleth (Centrale KU Leuven Login)]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Databases ==&lt;br /&gt;
* [[Using PostgreSQL]]&lt;br /&gt;
* [[Using MySQL]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== CMSs ==&lt;br /&gt;
* [[Setting up Wordpress]]&lt;br /&gt;
* [[Setting up Drupal]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security &amp;amp; anti-spam ==&lt;br /&gt;
* [[Keeping your website secure]]&lt;br /&gt;
* [[Preventing spam on your website]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Mail ==&lt;br /&gt;
* [[ULYSSIS mail]]&lt;br /&gt;
* [[Forwarders]]&lt;br /&gt;
* [[Fetch your KU Leuven email into another email address]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
== Shell ==&lt;br /&gt;
* [[Accessing your files]]&lt;br /&gt;
* [[Transferring files over SFTP]]&lt;br /&gt;
* [[Accessing shell servers over SSH]]&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
* [[Useful Linux Commands]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:45%;float:left;padding-right:10px;&amp;quot;&amp;gt;&lt;br /&gt;
== Versioning ==&lt;br /&gt;
* [[Subversion 101]]&lt;br /&gt;
* [[GitLab]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;width:45%;float:left&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [[ULYSSIS public IRC]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_PostgreSQL&amp;diff=80</id>
		<title>Using PostgreSQL</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_PostgreSQL&amp;diff=80"/>
		<updated>2014-05-11T10:16:45Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: /* Accessing PostgreSQL from outside of our network */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating a database =&lt;br /&gt;
&lt;br /&gt;
You can create one or more PostgreSQL databases in [https://ucc.ulyssis.org UCC].&lt;br /&gt;
&lt;br /&gt;
The first database you create will have the same name as your username. Subsequent databases will be prefixed with &amp;quot;''username''_&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
= Managing your database =&lt;br /&gt;
&lt;br /&gt;
* The easiest way to manage your database is using [https://phppgadmin.ulyssis.org phpPgAdmin].&lt;br /&gt;
* You can also access it via the [[Accessing shell servers over SSH|command line]] with:&lt;br /&gt;
 psql -h pgsql.ulyssis.org&lt;br /&gt;
&lt;br /&gt;
= Connecting to the database =&lt;br /&gt;
&lt;br /&gt;
You can connect to the database with the following details:&lt;br /&gt;
&lt;br /&gt;
* Host: &amp;lt;code&amp;gt;pgsql.ulyssis.org&amp;lt;/code&amp;gt;&lt;br /&gt;
* Login: your ULYSSIS username&lt;br /&gt;
* Password: the PostgreSQL password you chose in UCC&lt;br /&gt;
* Database: the database you created in UCC&lt;br /&gt;
&lt;br /&gt;
Note that some CMSs will assume that you use &amp;quot;localhost&amp;quot; as the host, and will hide the host option under advanced settings in the installation process. If you can't find anywhere to enter the hostname, look under advanced settings.&lt;br /&gt;
&lt;br /&gt;
== Connection string ==&lt;br /&gt;
&lt;br /&gt;
If you are programming your application yourself, PostgreSQL often uses the following connection format:&lt;br /&gt;
 host=$host user=$username password=$password db=$dbname&lt;br /&gt;
&lt;br /&gt;
Where you replace the parts starting with &amp;lt;code&amp;gt;$&amp;lt;/code&amp;gt; with the above connection details.&lt;br /&gt;
&lt;br /&gt;
== pg_connect ==&lt;br /&gt;
&lt;br /&gt;
If you are using PHP's [http://www.php.net/manual/en/function.pg-connect.php pg_connect] to connect to the&lt;br /&gt;
database, and your username is &amp;quot;foo&amp;quot;, your password is &amp;quot;password&amp;quot; and your database name is &amp;quot;foo&amp;quot;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$connection = pg_connect(&amp;quot;host=pgsql.ulyssis.org user=foo password=password db=foo&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== PDO ==&lt;br /&gt;
&lt;br /&gt;
If you want to connect using [http://be2.php.net/manual/en/intro.pdo.php PDO], your username is &amp;quot;foo&amp;quot;, your password is &amp;quot;password&amp;quot; and your database is &amp;quot;foo&amp;quot;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$pdo = new PDO('pgsql:host=pgsql.ulyssis.org;dbname=foo', 'foo', 'password');&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Accessing PostgreSQL from outside of our network=&lt;br /&gt;
To prevent unnecessary load on our database server by hackers and bots it is only available inside of our network. If you wish to access it externally the easiest way is to use an SSH-tunnel. On Linux, Mac OSX and other Unix-like Operating Systems it is easily possible to use the following command to create a tunnel to a local port (in this case 5400):&lt;br /&gt;
 ssh -f username@ssh2.ulyssis.org -L 5400:pgsql.ulyssis.org:5432 -N&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
	<entry>
		<id>https://docs.ulyssis.org/index.php?title=Using_PostgreSQL&amp;diff=79</id>
		<title>Using PostgreSQL</title>
		<link rel="alternate" type="text/html" href="https://docs.ulyssis.org/index.php?title=Using_PostgreSQL&amp;diff=79"/>
		<updated>2014-05-11T10:16:30Z</updated>

		<summary type="html">&lt;p&gt;Rockinroel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating a database =&lt;br /&gt;
&lt;br /&gt;
You can create one or more PostgreSQL databases in [https://ucc.ulyssis.org UCC].&lt;br /&gt;
&lt;br /&gt;
The first database you create will have the same name as your username. Subsequent databases will be prefixed with &amp;quot;''username''_&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
= Managing your database =&lt;br /&gt;
&lt;br /&gt;
* The easiest way to manage your database is using [https://phppgadmin.ulyssis.org phpPgAdmin].&lt;br /&gt;
* You can also access it via the [[Accessing shell servers over SSH|command line]] with:&lt;br /&gt;
 psql -h pgsql.ulyssis.org&lt;br /&gt;
&lt;br /&gt;
= Connecting to the database =&lt;br /&gt;
&lt;br /&gt;
You can connect to the database with the following details:&lt;br /&gt;
&lt;br /&gt;
* Host: &amp;lt;code&amp;gt;pgsql.ulyssis.org&amp;lt;/code&amp;gt;&lt;br /&gt;
* Login: your ULYSSIS username&lt;br /&gt;
* Password: the PostgreSQL password you chose in UCC&lt;br /&gt;
* Database: the database you created in UCC&lt;br /&gt;
&lt;br /&gt;
Note that some CMSs will assume that you use &amp;quot;localhost&amp;quot; as the host, and will hide the host option under advanced settings in the installation process. If you can't find anywhere to enter the hostname, look under advanced settings.&lt;br /&gt;
&lt;br /&gt;
== Connection string ==&lt;br /&gt;
&lt;br /&gt;
If you are programming your application yourself, PostgreSQL often uses the following connection format:&lt;br /&gt;
 host=$host user=$username password=$password db=$dbname&lt;br /&gt;
&lt;br /&gt;
Where you replace the parts starting with &amp;lt;code&amp;gt;$&amp;lt;/code&amp;gt; with the above connection details.&lt;br /&gt;
&lt;br /&gt;
== pg_connect ==&lt;br /&gt;
&lt;br /&gt;
If you are using PHP's [http://www.php.net/manual/en/function.pg-connect.php pg_connect] to connect to the&lt;br /&gt;
database, and your username is &amp;quot;foo&amp;quot;, your password is &amp;quot;password&amp;quot; and your database name is &amp;quot;foo&amp;quot;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$connection = pg_connect(&amp;quot;host=pgsql.ulyssis.org user=foo password=password db=foo&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== PDO ==&lt;br /&gt;
&lt;br /&gt;
If you want to connect using [http://be2.php.net/manual/en/intro.pdo.php PDO], your username is &amp;quot;foo&amp;quot;, your password is &amp;quot;password&amp;quot; and your database is &amp;quot;foo&amp;quot;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$pdo = new PDO('pgsql:host=pgsql.ulyssis.org;dbname=foo', 'foo', 'password');&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Accessing PostgreSQL from outside of our network=&lt;br /&gt;
To prevent unnecessary load on our database server by hackers and bots it is only available inside of our network. If you wish to access it externally the easiest way is to use an SSH-tunnel. On Linux, Mac OSX and other Unix-like Operating Systems it is easily possible to use the following command to create a tunnel to a local port (in this case 5400)&lt;br /&gt;
 ssh -f username@ssh2.ulyssis.org -L 5400:pgsql.ulyssis.org:5432 -N&lt;/div&gt;</summary>
		<author><name>Rockinroel</name></author>
	</entry>
</feed>