GPG guide/Setting Up Your Local Development Environment
You can view your local copies of the guide's HTML files, but they will not be styled at all. To see the guide the way it actually looks online (recommended), you need to set up an Apache server on your computer for development.
Contents
Instructions
Apache is required in order to replicate the appearance of the website on the live and staging servers on your machine. If you don't want to install Apache, you can still work on the site, you just won't be able to see what it looks like until you push to the remote.
Modifying Apache's configuration files and running its executables typically requires root access. So, you will most likely need to run the commands below as the root user using `sudo`.
Enable server-side include module and rewrite module
a2enmod include a2enmod rewrite
If this doesn't work, you may not have Apache installed. Install the package apache2 from your package manager.
Create virtual host
Create a new file called esd.conf in `/etc/apache2/sites-available` with the following contents:
Replace all instances of `PATH-TO-ESD-REPO` with the full path to the root directory of your local git repository AND 'PATH-TO-LOG-DIRECTORY' with a a path to a directory where you want to keep your logs (up to you, but please not in the git repository). It's not generally a good idea to turn off the logging.
<VirtualHost *:80> RewriteEngine on ServerName esd-local-dev.fsf.org ServerAdmin webmaster@localhost DocumentRoot /PATH-TO-ESD-REPO <Directory /PATH-TO-ESD-REPO/> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted Order deny,allow deny from none allow from all SSILegacyExprParser on Options +Includes XBitHack on </Directory> ErrorLog /PATH-TO-LOG-DIRECTORY/error.log CustomLog /PATH-TO-LOG-DIRECTORY/access.log combined </VirtualHost>
Replace all instances of `PATH-TO-ESD-REPO` with the full path to the root directory of your local git repository AND 'PATH-TO-LOG-DIRECTORY' with a a path to a directory where you want to keep your logs (up to you, but please not in the git repository). It's not generally a good idea to turn off the logging.
Enable virtual host
a2ensite esd
Restart Apache
service apache2 restart
Edit your hosts file
Edit your system's `/etc/hosts` file and edit the line starting with 127.0.0.1 to include esd-local-dev.fsf.org at the end, for example:
127.0.0.1 localhost esd-local-dev.fsf.org
Test
Visit http://esd-local-dev.fsf.org/en in your web browser. If everything is configured properly, you will see the English version of the site, and the language translation dropdown will work. If you see all the names of the languages written out in lines with no dropdown, then JavaScript is not working. If the text appears on a plain white background with minimal formatting, then CSS is not working. To access the CSS, you need to be online, because it's stored on the FSF's remote server.