Taking the Create a Wiki article as a starting point, this article describes how to set up preview of Friposts wiki.
The basic idea is something like the following:
. Bare Git Repository
. git.fripost.org:fripost-wiki.git
. |
. |
. Repository for Local Edits
. ~/git/fripost/wiki
. |
. |
. The Preview Ikiwiki Web Part
. ~/public_html/fripost-wiki-preview
Where ~/git/fripost/wiki is a local git repository with remote tracking of the main bare wiki repository git.fripost.org:fripost-wiki.git. I define an alias command for recompilation of the local version of the. The local preview version is accessed by pointing the browser to http://localhost/~/fripost-wiki-preview/.
First the basics. According to Create a Wiki do the following:
For the Ikiwiki configuration question, answer them as follows
wikiname: fripost-wiki-preview
url: http://localhost/~<name>/lab-wiki
srcdir: ~/git/fripost/wiki
destdir: ~/public_html/fripost-wiki-preview
settings: ~/public_html/fripost-wiki-preview/wiki.setup
Where is the local user name and ~/git/fripost/wiki is where the local wiki Git repository. This will generate a configuration file: ~/public_html/fripost-wiki-preview/wiki.setup. Generate the first issue:
$ ikiwiki --setup ~/public_html/fripost-wiki-preview/wiki.setup
For to preview local edits, run:
$ ikiwiki --setup ~/public_html/fripost-wiki-preview/wiki.setup --refresh
and point your browser to http://localhost/~/fripost-wiki-preview/.
You can also create an alias for to refresh the preview command.
$ alias fripost-wiki-preview-refresh='ikiwiki -setup /home/gustav/lab-wiki/fripost-wiki.setup -refresh'
For to be able to access http://localhost/~user
the “userdir” functionality is needed. For Nginx, put the following in e.g. /etc/nginx/sites-available/localhost:
server {
location ~ ^/~(.+?)(/.*)?$ {
alias /home/$1/public_html$2;
index index.html index.htm
autoindex on;
}
}
Many links on the Fripost wiki are absolute. That means that you sometimes will not be able to follow homepage page and wiki page links between your local preview wiki. For testing purposes, that can sometimes be necessary. The best strategy is to edit your /etc/hosts table and make fripost.org and wiki.fripost.org point to localhost. Of course your web server need to be configured to serve those pages. This is my Nginx configuration:
# fripost.org
server {
server_name fripost.org;
location / {
root /home/gustav/public_html/fripost-wiki/website;
location /static { root /home/gustav/public_html/fripost-wiki; }
}
}
# wiki.fripost.org
server {
server_name wiki.fripost.org;
location / {
root /home/gustav/public_html/fripost-wiki;
}
}
You might experience strange effects from that the web-browser has cached DNS information. Search Internet for how to flush your browser’s DNS cache.
Last modified | History | Source | Preferences