all:bibles:linux:serveur:dokuwiki
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| all:bibles:linux:serveur:dokuwiki [2024/05/02 14:24] – [User] omeylhoc | all:bibles:linux:serveur:dokuwiki [2024/12/31 10:50] (Version actuelle) – [Identification] omeylhoc | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== Dokuwiki ====== | ||
| + | ---- | ||
| + | |||
| + | ===== Installation ===== | ||
| + | |||
| + | ==== Packages prérequis ==== | ||
| + | |||
| + | === Ubuntu à partir de 18.04 === | ||
| + | |||
| + | <code bash> | ||
| + | sudo apt-get install apache2 php mysql-server libapache2-mod-php php-mysql php-ldap php-zip php-mbstring php-xml | ||
| + | </ | ||
| + | |||
| + | ==== Dokuwiki ==== | ||
| + | |||
| + | <code bash> | ||
| + | cd / | ||
| + | sudo wget https:// | ||
| + | sudo tar xvf dokuwiki-stable.tgz | ||
| + | sudo mv dokuwiki-*/ dokuwiki | ||
| + | sudo chown -R www-data: | ||
| + | </ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
| + | ===== Configuration apache ===== | ||
| + | |||
| + | ==== Configuration du site ==== | ||
| + | |||
| + | === Fichier de configuration === | ||
| + | |||
| + | <file apache dokuwiki.conf> | ||
| + | < | ||
| + | < | ||
| + | ServerName it.wiki.acs.altran.com | ||
| + | DocumentRoot "/ | ||
| + | ErrorLog ${APACHE_LOG_DIR}/ | ||
| + | CustomLog ${APACHE_LOG_DIR}/ | ||
| + | |||
| + | Include " | ||
| + | |||
| + | SSLEngine on | ||
| + | SSLCertificateFile | ||
| + | SSLCertificateKeyFile / | ||
| + | |||
| + | AliasMatch ^/ | ||
| + | AliasMatch ^/ | ||
| + | Alias / | ||
| + | |||
| + | < | ||
| + | Options +FollowSymLinks | ||
| + | AllowOverride All | ||
| + | order allow,deny | ||
| + | Allow from all | ||
| + | < | ||
| + | # Uncomment to implement server-side URL rewriting | ||
| + | # (cf. < | ||
| + | # Do *not* mix that with multisite! | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | </ | ||
| + | </ | ||
| + | < | ||
| + | Require all denied | ||
| + | </ | ||
| + | < | ||
| + | Require all denied | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | === Prise en compte === | ||
| + | |||
| + | <code bash> | ||
| + | sudo a2enmod ssl | ||
| + | sudo a2ensite dokuwiki | ||
| + | sudo systemctl reload apache2 | ||
| + | </ | ||
| + | |||
| + | ==== Sécurisation ==== | ||
| + | |||
| + | === Activation ssl === | ||
| + | |||
| + | <code bash> | ||
| + | sudo a2enmod ssl | ||
| + | sudo systemctl reload apache2 | ||
| + | </ | ||
| + | |||
| + | <note tip> | ||
| + | |||
| + | === Sécurisation des entêtes http === | ||
| + | |||
| + | <code bash> | ||
| + | sudo a2enmod headers | ||
| + | sudo systemctl reload apache2 | ||
| + | </ | ||
| + | |||
| + | Ajouter les lignes suivantes à la configuration apache : | ||
| + | |||
| + | <code apache> | ||
| + | Header always set Strict-Transport-Security " | ||
| + | Header always append X-Frame-Options DENY | ||
| + | Header set X-Content-Type-Options nosniff | ||
| + | Header set X-XSS-Protection "1; mode=block" | ||
| + | Header set Content-Security-Policy " | ||
| + | Header set X-Permitted-Cross-Domain-Policies " | ||
| + | Header set Referrer-Policy " | ||
| + | Header set Expect-CT ' | ||
| + | </ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
| + | ===== Configuration ===== | ||
| + | |||
| + | ==== Configuration post installation ==== | ||
| + | |||
| + | La configuration se fait en lancant l'url [[http://< | ||
| + | |||
| + | ==== Gestion des droits ==== | ||
| + | |||
| + | Aller dans le menu « Administrer » puis « Gestion de la liste des contrôles d' | ||
| + | |||
| + | Sélectionner la racine choisir le groupe @ALL et mettre autorisation « Aucune ». | ||
| + | |||
| + | Choisir le groupe @user et mettre autorisation « Envoyer ». | ||
| + | |||
| + | ==== Largeur écran ==== | ||
| + | |||
| + | Pour afficher les pages sur toute la largeur de l' | ||
| + | |||
| + | * Cliquer sur « Administrer ». | ||
| + | * Puis choisir « Paramètres de style du thème (template) » | ||
| + | * Modifier le paramètre « Largeur du site complet » avec 100% | ||
| + | |||
| + | ==== Affichage titres ==== | ||
| + | |||
| + | Pour afficher le titre des pages dans les menus plutôt que le nom des pages : | ||
| + | |||
| + | * Cliquer sur « Administrer ». | ||
| + | * Puis choisir « Paramètres de configuration » | ||
| + | * Aller à la partie « Paramètre d' | ||
| + | * Changer le paramètre « Utiliser le titre de premier niveau pour le nom de la page » par « Toujours » ou « Navigation seulement » | ||
| + | |||
| + | ==== Ouverture des liens ==== | ||
| + | |||
| + | - Aller dans le menu « Administrer » puis « Paramètres de configuration ». | ||
| + | - Chercher target dans la partie « Paramètres des liens ». | ||
| + | - Définir la cible désirée en fonction du type de lien | ||
| + | |||
| + | * _blank : ouvre un lien dans une nouvelle fenêtre | ||
| + | * _tab : ouvre un lien dans un nouvel onglet. | ||
| + | * _self ou vide : ouvre un lien dans la même fenêtre | ||
| + | |||
| + | Les autres valeurs possibles comme _parent ou _top ne sont utiles que si votre thème utilise les frames. Dans ce cas, vos devriez savoir à quoi ils servent. | ||
| + | |||
| + | ==== Changement signature ==== | ||
| + | |||
| + | Il est possible de modifier la signature insérée avec le bouton prévu à cet effet. | ||
| + | |||
| + | === Paramètre === | ||
| + | |||
| + | - Aller dans le menu « Administrer » puis « Paramètres de configuration ». | ||
| + | - Chercher signature dans la partie « Paramètres d' | ||
| + | |||
| + | Il est possible de modifier l' | ||
| + | |||
| + | < | ||
| + | [[@NAMESPACE@|Haut de page]] | ||
| + | </ | ||
| + | |||
| + | et on modifiera le script comme indiqué ci-dessous | ||
| + | |||
| + | === Modification script php === | ||
| + | |||
| + | Possibilité de modifier la fonction <color # | ||
| + | |||
| + | <code php> | ||
| + | $sig = str_replace(' | ||
| + | </ | ||
| + | |||
| + | ==== Identification ==== | ||
| + | |||
| + | === Passage en LDAPS === | ||
| + | |||
| + | * Certificat | ||
| + | |||
| + | Positionnement du certificat <color # | ||
| + | |||
| + | * Prise en compte | ||
| + | |||
| + | Modification du fichier <color # | ||
| + | |||
| + | <code php> | ||
| + | $conf[' | ||
| + | $conf[' | ||
| + | </ | ||
| + | |||
| + | <note tip>La précision du port n'est pas indispensable étant donné que l'on utilise le port par défaut pour le protocole ldaps.</ | ||
| + | |||
| + | === Retour en identification locale === | ||
| + | |||
| + | Editer le fichier <color # | ||
| + | |||
| + | <code php> | ||
| + | $conf[' | ||
| + | </ | ||
| + | |||
| + | par | ||
| + | |||
| + | <code php> | ||
| + | $conf[' | ||
| + | </ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
| + | ===== Plugins ===== | ||
| + | |||
| + | ==== Installation ==== | ||
| + | |||
| + | === Manuelle | ||
| + | |||
| + | En cas de problème il est possible de procéder à une installation manuelle (ou mise à jour). Il suffit de télécharger le paquet, d' | ||
| + | |||
| + | === Liste === | ||
| + | |||
| + | ^ Fonction | ||
| + | | Couleur | ||
| + | | Export au format pdf | [[https:// | ||
| + | | Edition de tableau | ||
| + | | Gallerie d' | ||
| + | | Inclusion de section/ | ||
| + | | Menu index des pages du wiki | [[https:// | ||
| + | | Touches clavier | ||
| + | | Renommage de page | [[http:// | ||
| + | | Ajout de notes colorées | ||
| + | | Export openoffice | ||
| + | | Cartographie | ||
| + | | Export du site en html ou pdf | [[https:// | ||
| + | | Syntaxe de typographie | ||
| + | | Mise à jour Wiki | [[http:// | ||
| + | | Page d' | ||
| + | |||
| + | === Répertoire d' | ||
| + | |||
| + | Les plugins sont installés dans le sous répertoire <color # | ||
| + | |||
| + | ==== Mise à jour ==== | ||
| + | |||
| + | En cas d' | ||
| + | |||
| + | <code bash> | ||
| + | max_execution_time = 180 | ||
| + | </ | ||
| + | |||
| + | Puis redémarrer apache | ||
| + | |||
| + | <code bash> | ||
| + | sudo systemctl restart apache2 | ||
| + | </ | ||
| + | |||
| + | ==== Openlayers map ==== | ||
| + | |||
| + | === Installation === | ||
| + | |||
| + | * Installer le package php-gd | ||
| + | |||
| + | <code bash> | ||
| + | sudo apt-get install php-gd | ||
| + | </ | ||
| + | |||
| + | * Installer le plugin [[https:// | ||
| + | * Installer le plugin [[https:// | ||
| + | |||
| + | <note warning> | ||
| + | En cas d' | ||
| + | </ | ||
| + | |||
| + | === Ajout du type mime gpx === | ||
| + | |||
| + | Ajouter la ligne suivante dans le fichier <color # | ||
| + | |||
| + | < | ||
| + | gpx !application/ | ||
| + | </ | ||
| + | |||
| + | Ajouter une icône pour le type gpx sous <color # | ||
| + | |||
| + | <note important> | ||
| + | </ | ||
| + | |||
| + | === Utilisation === | ||
| + | |||
| + | **Uploader trace GPX** | ||
| + | |||
| + | Ajouter la trace GPX à l'aide du gestionnaire de média « Ajouter des images ou autres fichiers ». | ||
| + | |||
| + | **Insérer le code pour la carte** | ||
| + | |||
| + | A l'aide du bouton spécifique ou en ajoutant directement le code : | ||
| + | |||
| + | < | ||
| + | <olmap id=" | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | * **id** | ||
| + | * **width** | ||
| + | * **height** | ||
| + | * **zoom** | ||
| + | * **lat** | ||
| + | * **lon** | ||
| + | * **baselyr** : facultatif. OpenStreetMap par défaut. | ||
| + | * **gpxfile** : facultatif. Permet d' | ||
| + | |||
| + | < | ||
| + | Valeurs par défaut dans le fichier de conf <color # | ||
| + | </ | ||
| + | <note warning> | ||
| + | Il faut un espace derrière le nom du fichier gpx sinon la carte ne s' | ||
| + | </ | ||
| + | |||
| + | ==== Note ==== | ||
| + | |||
| + | Pour ajouter des boutons à l' | ||
| + | |||
| + | <file javascript script.js> | ||
| + | if(toolbar){ | ||
| + | toolbar[toolbar.length] = {" | ||
| + | " | ||
| + | " | ||
| + | }; | ||
| + | toolbar[toolbar.length] = {" | ||
| + | " | ||
| + | " | ||
| + | }; | ||
| + | toolbar[toolbar.length] = {" | ||
| + | " | ||
| + | " | ||
| + | }; | ||
| + | toolbar[toolbar.length] = {" | ||
| + | " | ||
| + | " | ||
| + | }; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ==== Boutons ==== | ||
| + | |||
| + | Pour ajouter des boutons pour les sections de code ou les touches clavier, se rendre dans le « Gestionnaire d' | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | ==== User homepage ==== | ||
| + | |||
| + | === Activation === | ||
| + | |||
| + | * Aller dans les paramètres de configuration du plugin Userhomepage | ||
| + | * Cocher la case « Créer les espaces privés des utilisateurs » | ||
| + | * Remplacer le contenu de la page start.txt à la racine par | ||
| + | |||
| + | < | ||
| + | {{page> | ||
| + | </ | ||
| + | |||
| + | * Créer le contenu désiré sous user:< | ||
| + | |||
| + | < | ||
| + | ====== Contenu du site ====== | ||
| + | |||
| + | ==== Bibles ==== | ||
| + | |||
| + | {{indexmenu> | ||
| + | </ | ||
| + | |||
| + | <note important> | ||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
| + | |||
| + | ===== Répertoires ===== | ||
| + | |||
| + | ==== Liste ==== | ||
| + | |||
| + | === conf === | ||
| + | |||
| + | Fichiers de configuration. | ||
| + | |||
| + | === data/pages === | ||
| + | |||
| + | Pages du wiki au format texte. | ||
| + | |||
| + | === data/attic === | ||
| + | |||
| + | Historique des pages du Wiki. | ||
| + | |||
| + | === data/media === | ||
| + | |||
| + | Fichiers téléchargés (Images, documents, ...). | ||
| + | |||
| + | ==== Nettoyage ==== | ||
| + | |||
| + | Il est possible de faire un peu de ménage de temps en temps. Script automatique ci-dessous à adapter, il permet : | ||
| + | |||
| + | * Suppression des fichiers historiques de plus de 30 jours (à voir si l'on souhaite garder l' | ||
| + | * Suppression des fichiers de verrouillage de plus de 1 jour. | ||
| + | * Suppression des fichiers du cache de plus de 30 jours. | ||
| + | * Suppression des répertoires vides. | ||
| + | |||
| + | <file bash cleanup-wiki.sh> | ||
| + | #!/bin/bash | ||
| + | |||
| + | cleanup() | ||
| + | { | ||
| + | local data_path=" | ||
| + | local retention_days=" | ||
| + | |||
| + | # purge files older than ${retention_days} days from attic and media_attic (old revisions) | ||
| + | find " | ||
| + | |||
| + | # remove stale lock files (files which are 1-2 days old) | ||
| + | find " | ||
| + | |||
| + | # remove files older than ${retention_days} days from the cache | ||
| + | find " | ||
| + | |||
| + | # remove empty directories | ||
| + | find " | ||
| + | } | ||
| + | |||
| + | # cleanup DokuWiki installations (path to datadir, number of days) | ||
| + | # some examples: | ||
| + | |||
| + | if [ $# -eq 1 ]; then | ||
| + | REP_WIKI=" | ||
| + | if [ -d ${REP_WIKI} ]; then | ||
| + | cleanup ${REP_WIKI} 30 | ||
| + | else | ||
| + | printf " | ||
| + | exit 1 | ||
| + | fi | ||
| + | else | ||
| + | printf " | ||
| + | exit 1 | ||
| + | fi | ||
| + | </ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
| + | |||
| + | ===== Stylesheet ===== | ||
| + | |||
| + | Les nouveaux styles doivent être définis dans le fichier <color # | ||
| + | |||
| + | ==== Encadrer les titres de niveau 2 ==== | ||
| + | |||
| + | <file css userstyle.css> | ||
| + | h2 { | ||
| + | margin: 2px; | ||
| + | padding: 2em; | ||
| + | border: 2px solid __text_alt__; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ==== Réduire la marge sous les titres de niveau 3 ==== | ||
| + | |||
| + | <file css userstyle.css> | ||
| + | h3 { | ||
| + | margin-bottom: | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ==== Définir la couleur des titres de niveau 2 ==== | ||
| + | |||
| + | <file css userstyle.css> | ||
| + | h2 { | ||
| + | background-color: | ||
| + | color:# | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ==== Couleurs : color ==== | ||
| + | |||
| + | ^ Couleur | ||
| + | | Blanc | # | ||
| + | | <color # | ||
| + | | <color # | ||
| + | | <color # | ||
| + | | <color # | ||
| + | | <color # | ||
| + | | <color # | ||
| + | | <color # | ||
| + | | <color # | ||
| + | | <color # | ||
| + | | <color # | ||
| + | | Noir | # | ||
| + | |||
| + | ==== Taille : font-size ==== | ||
| + | |||
| + | ^ Valeur | ||
| + | | medium | ||
| + | | xx-small | ||
| + | | x-small | ||
| + | | small | | ||
| + | | large | | ||
| + | | x-large | ||
| + | | xx-large | ||
| + | |||
| + | ==== Style de caractères ==== | ||
| + | |||
| + | <file css> | ||
| + | font-style: | ||
| + | font-style: | ||
| + | font-weight: | ||
| + | font-weight: | ||
| + | font-weight: | ||
| + | font-weight: | ||
| + | text-decoration: | ||
| + | text-decoration: | ||
| + | text-decoration: | ||
| + | text-decoration: | ||
| + | text-decoration: | ||
| + | text-decoration: | ||
| + | text-decoration: | ||
| + | </ | ||
| + | |||
| + | ==== Exemple de fichier ==== | ||
| + | |||
| + | <file css userstyle.css> | ||
| + | h2 { | ||
| + | margin: 2px; | ||
| + | padding: 2em; | ||
| + | border: 2px solid __text_alt__; | ||
| + | } | ||
| + | |||
| + | h3 { | ||
| + | color:# | ||
| + | font-style: | ||
| + | font-weight: | ||
| + | text-decoration: | ||
| + | font-size: large; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
| + | |||
| + | ===== Syntaxe ===== | ||
| + | |||
| + | ==== Syntax Highlighting ==== | ||
| + | |||
| + | * apache | ||
| + | * awk | ||
| + | * bash | ||
| + | * basic4gl | ||
| + | * batch | ||
| + | * cmake | ||
| + | * cobol | ||
| + | * c | ||
| + | * cpp | ||
| + | * csharp | ||
| + | * css | ||
| + | * delphi | ||
| + | * dos | ||
| + | * fortran | ||
| + | * html | ||
| + | * html5 | ||
| + | * ini | ||
| + | * inno | ||
| + | * java5 | ||
| + | * java | ||
| + | * javascript | ||
| + | * lisp | ||
| + | * make | ||
| + | * mysql | ||
| + | * nagios | ||
| + | * nginx | ||
| + | * oracle11 | ||
| + | * oracle8 | ||
| + | * pascal | ||
| + | * perl6 | ||
| + | * perl | ||
| + | * php | ||
| + | * postgresql | ||
| + | * postscript | ||
| + | * powershell | ||
| + | * prolog | ||
| + | * properties | ||
| + | * python | ||
| + | * qbasic | ||
| + | * reg | ||
| + | * rexx | ||
| + | * rpmspec | ||
| + | * ruby | ||
| + | * sql | ||
| + | * sshconfig | ||
| + | * tcl | ||
| + | * teraterm | ||
| + | * text | ||
| + | * vb | ||
| + | * vbscript | ||
| + | * vim | ||
| + | * xml | ||
| + | * yaml | ||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
| + | |||
| + | |||
| + | ===== Trucs & Astuces ===== | ||
| + | |||
| + | ==== Debug ==== | ||
| + | |||
| + | === Mise en place === | ||
| + | |||
| + | Ajouter à la fin de l'url de la page <color # | ||
| + | |||
| + | === Résultat === | ||
| + | |||
| + | Les traces se trouvent dans le fichier <color # | ||
| + | |||
| + | ==== Vider le cache ==== | ||
| + | |||
| + | === Pour toutes les pages === | ||
| + | |||
| + | Enregistrer de nouveau les paramètres de configuration à partir du menu « <color # | ||
| + | |||
| + | <code bash> | ||
| + | touch conf/ | ||
| + | </ | ||
| + | |||
| + | === Pour une page particulière === | ||
| + | |||
| + | Ajouter simplement <color # | ||
| + | |||
| + | ==== Mailto ==== | ||
| + | |||
| + | Pour pouvoir utiliser la syntaxe complète de mailto dans un lien (pour ajouter quelqu' | ||
| + | |||
| + | * Créer le fichier <color # | ||
| + | |||
| + | mailto | ||
| + | |||
| + | |||
| + | * Dans le wiki ajouter un lien du type : | ||
| + | |||
| + | [[mailto> | ||
| + | |||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
| + | |||
| + | ===== Dépannage ===== | ||
| + | |||
| + | ==== IndexMenu plugin ==== | ||
| + | |||
| + | === Message d' | ||
| + | |||
| + | Indexmenu Plugin: If you use the ' | ||
| + | |||
| + | === Solution === | ||
| + | |||
| + | * Cliquer sur « Administrer ». | ||
| + | * Puis choisir « Paramètres de configuration » | ||
| + | * Aller à la partie « Fonctionnalités expérimentales » en cliquant sur le menu correspondant sur la droite. | ||
| + | * Décocher la ligne correspondant à defer_js « Attendre que le code HTML des pages soit analysé avant d' | ||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
| + | |||
| + | ===== Sources ===== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | ---- | ||
| + | |||
| + | [[all: | ||
