This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
tutorials:dokuwiki [2013/07/01 14:43] razvan old revision restored |
tutorials:dokuwiki [2020/07/20 09:16] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | = DokuWiki Installation and Configuration = | + | ====== DokuWiki Installation and Configuration |
[[http:// | [[http:// | ||
- | * it is file-based (no database required); | + | |
- | * installation and configuration is a breeze, especially for a manual installation (grabbing the source code, unzip and configure); | + | * installation and configuration is a breeze, especially for a manual installation (grabbing the source code, unzip and configure); |
- | * it uses a namespace-based structure, allowing for easy organization of information; | + | * it uses a namespace-based structure, allowing for easy organization of information; |
- | * its community develops a lot of useful [[http:// | + | * its community develops a lot of useful [[http:// |
- | * it is, in my opinion, very usable: the interface, the editing features, information organization, | + | * it is, in my opinion, very usable: the interface, the editing features, information organization, |
That being said, let's move on to the requirements and installation steps. | That being said, let's move on to the requirements and installation steps. | ||
- | == User Requirements == | + | ===== User Requirements |
DokuWiki is highly configurable and customizable and I'm going to define the features that are to be used by a wiki installation. These are the features I'm usually going for when doing a DokuWiki installation, | DokuWiki is highly configurable and customizable and I'm going to define the features that are to be used by a wiki installation. These are the features I'm usually going for when doing a DokuWiki installation, | ||
- | * The wiki is to be installed by a non-priviliged users using their own "user directory" | + | |
- | * The wiki is public: everyone can read its contents and only certain users may edit it, after logging in (through the use of ACLs). | + | * The wiki is public: everyone can read its contents and only certain users may edit it, after logging in (through the use of ACLs). |
- | * Create index pages for easy access to information. This is achieved with the help of the [[http:// | + | * Create index pages for easy access to information. This is achieved with the help of the [[http:// |
- | * The wiki will use " | + | * The wiki will use " |
- | * The wiki will enable [[http:// | + | * The wiki will enable [[http:// |
- | * The wiki will define a {{{contrib}}} namespace that is world-writable. | + | * The wiki will define a {{{contrib}}} namespace that is world-writable. |
- | * The wiki will define an {{{internal}}} namespace that is readable/ | + | * The wiki will define an {{{internal}}} namespace that is readable/ |
- | * The wiki enables HTTPS-access to login/ | + | * The wiki enables HTTPS-access to login/ |
- | * The wiki enables LDAP authentication (optional - one must have access to a LDAP service). | + | * The wiki enables LDAP authentication (optional - one must have access to a LDAP service). |
- | == Install and Upgrade Scripts == | + | ===== Install and Upgrade Scripts |
- | * Mircea Bardac and me have created a set of scripts for installation, | + | |
- | * Issue the following command to get a copy of the repository< | + | * Issue the following command to get a copy of the repository< |
git clone http:// | git clone http:// | ||
</ | </ | ||
- | * Browse to the {{{dokuwiki/ | + | |
- | * Instructions below are also present in the {{{README}}} file in the {{{dokuwiki/ | + | * Instructions below are also present in the {{{README}}} file in the {{{dokuwiki/ |
- | == Basic Installation and Configuration == | + | ===== Basic Installation and Configuration |
- | === Using the Install Scripts === | + | ==== Using the Install Scripts |
- | # Find the desired DokuWiki version for download. Use this [[http:// | + | - |
- | # Run the install {{{dw-install}}} script. It requires three arguments: | + | |
- | ## the installation folder for {{{dokuwiki}}}; | + | |
- | ## the DokuWiki tarball download URL; ({{{http:// | + | |
- | ## the future DokuWiki URL. ({{{http:// | + | |
- | #* Sample run:< | + | |
razvan@swarm: | razvan@swarm: | ||
- | * Logging information to / | + | |
- | * Using download link http:// | + | * Using download link http:// |
* Downloading DokuWiki ... done. | * Downloading DokuWiki ... done. | ||
- | * Preparing installation folder / | + | |
- | * Installing plugins | + | * Installing plugins |
* Installing plugin: Creole ... done. | * Installing plugin: Creole ... done. | ||
* Installing plugin: Google Analytics ... done. | * Installing plugin: Google Analytics ... done. | ||
Line 62: | Line 62: | ||
| | ||
</ | </ | ||
- | # Open install URL (as mentioned in step 1 of the post-install message) and configure DokuWiki instance. | + | - |
- | #* The web configuration interface is quite intuitive. | + | |
- | #* You will probably go for a public wiki (read access for everyone, and write access for registered users). | + | |
- | # Run the {{{dw-post-install}}} script, as mentioned in step 4 of the end message. | + | |
- | #* The `dw-post-install' | + | |
- | #*# Updating the {{{$DW_ROOT/ | + | |
- | #*# Creating the {{{$DW_ROOT/ | + | |
- | #* Sample run:< | + | |
razvan@swarm: | razvan@swarm: | ||
* Updating conf/ | * Updating conf/ | ||
* Updating .htaccess ... done. | * Updating .htaccess ... done. | ||
</ | </ | ||
- | # **Congratulations!** You've got a basic DokuWiki installation with pretty slash based URLs, HTTPS support login and Creole markup. | + | - |
- | === indexmenu Configuration === | + | ==== indexmenu Configuration |
The indexmenu plugin is installed but the index pages are not yet created. As written in the {{{local.php}}} file, we will use {{{home: | The indexmenu plugin is installed but the index pages are not yet created. As written in the {{{local.php}}} file, we will use {{{home: | ||
Line 83: | Line 83: | ||
You'll need to go through the following steps (mentioned in the {{{README}}} file): | You'll need to go through the following steps (mentioned in the {{{README}}} file): | ||
- | # Type {{{home: | + | - |
{{indexmenu> | {{indexmenu> | ||
</ | </ | ||
- | #* Each time you will use the {{{Index}}} button in the bottom right corner the index menu in the {{{home: | + | - * Each time you will use the {{{Index}}} button in the bottom right corner the index menu in the {{{home: |
- | # Add an index menu to the first page in the wiki (home). Just type {{{home}}} in DokuWiki' | + | |
- | = Wiki Name = | + | ====== Wiki Name ====== |
{{indexmenu> | {{indexmenu> | ||
</ | </ | ||
- | #* {{{Wiki Name}}} is the name of the wiki. It gets displayed as a heading 1 title. | + | - * {{{Wiki Name}}} is the name of the wiki. It gets displayed as a heading 1 title. |
- | # You can add indexes to namespaces (edit the {{{$namespace/ | + | |
= Namespace Name == | = Namespace Name == | ||
Line 99: | Line 99: | ||
</ | </ | ||
- | == Advanced Configuration == | + | ===== Advanced Configuration |
- | === LDAP Authentication === | + | ==== LDAP Authentication |
- | * The [[http:// | + | |
- | * The [[http:// | + | * The [[http:// |
$conf[' | $conf[' | ||
Line 116: | Line 116: | ||
$conf[' | $conf[' | ||
- | # This is optional but may be required for your server: | + | - |
$conf[' | $conf[' | ||
- | # Mapping can be used to specify where the internal data is coming from. | + | - |
$conf[' | $conf[' | ||
$conf[' | $conf[' | ||
- | # Optional debugging | + | - |
$conf[' | $conf[' | ||
</ | </ | ||
- | * The {{{$conf[' | + | |
- | * The {{{$conf[' | + | * The {{{$conf[' |
- | * **IMPORTANT**: | + | * **IMPORTANT**: |
- | *# Make a copy of the {{{local.php}}} file (be it {{{local.php.bak}}}). | + | * # Make a copy of the {{{local.php}}} file (be it {{{local.php.bak}}}). |
- | *# Delete the file {{{rm local.php}}}; | + | * # Delete the file {{{rm local.php}}}; |
- | *# Copy the backup file ({{{local.php.bak}}}) to {{{local.php}}}. | + | * # Copy the backup file ({{{local.php.bak}}}) to {{{local.php}}}. |
- | *# Provide access writes to the group, assuming that to be {{{www-data}}}, | + | * # Provide access writes to the group, assuming that to be {{{www-data}}}, |
- | ==== Disable Unnecessary Actions | + | === Disable Unnecessary Actions === |
In case you choose to use LDAP authentication, | In case you choose to use LDAP authentication, | ||
- | # use the {{{$conf[' | + | - |
- | # use the DokuWiki' | + | |
- | === Split Authentication === | + | ==== Split Authentication |
The LDAP service often offers little support for group authorization inside DokuWiki. A better approach would be authenticating through LDAP and using another engine for authentication. This can be accomplished through the use of [[http:// | The LDAP service often offers little support for group authorization inside DokuWiki. A better approach would be authenticating through LDAP and using another engine for authentication. This can be accomplished through the use of [[http:// | ||
Line 146: | Line 146: | ||
In order to configure split authentication, | In order to configure split authentication, | ||
- | # Update the {{{local.php}}} file with configuration lines such as these:< | + | - |
$conf[' | $conf[' | ||
Line 156: | Line 156: | ||
$conf[' | $conf[' | ||
</ | </ | ||
- | #* I assumed the configuration lines for LDAP are already there. | + | - * I assumed the configuration lines for LDAP are already there. |
- | #* In the above configuration, | + | |
- | # Authorization configuration is done by editing the {{{conf/ | + | |
- | # user: | + | |
razvan: | razvan: | ||
Line 170: | Line 170: | ||
[...] | [...] | ||
</ | </ | ||
- | #* The {{{MD5password}}}, | + | - * The {{{MD5password}}}, |
- | # You can now use the {{{Access Control List Management}}} link in the " | + | |
- | == Upgrading == | + | ===== Upgrading |
DokuWiki has a smart notification system that lets you know whether a new version of DokuWiki is available. A DokuWiki upgrade is fairly easy to accomplish. The upgrade steps are described on the [[http:// | DokuWiki has a smart notification system that lets you know whether a new version of DokuWiki is available. A DokuWiki upgrade is fairly easy to accomplish. The upgrade steps are described on the [[http:// | ||
Line 185: | Line 185: | ||
razvan@swarm: | razvan@swarm: | ||
- | * Logging information to / | + | |
* Downloading DokuWiki ... done. | * Downloading DokuWiki ... done. | ||
* Backing up Dokuwiki instance to / | * Backing up Dokuwiki instance to / | ||
* Upgrading Dokuwiki installation in / | * Upgrading Dokuwiki installation in / | ||
- | * Installing plugins | + | |
* Installing plugin: Creole ... done. | * Installing plugin: Creole ... done. | ||
* Installing plugin: Google Analytics ... done. | * Installing plugin: Google Analytics ... done. | ||
Line 199: | Line 199: | ||
Enjoy! | Enjoy! | ||
+ | |||
+ | ===== Useful Plugins ===== | ||
+ | |||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ |