Moderación y Desarrollo

Notas sobre el setup de esta wiki y herramientas de moderación.

Lista de cambios sin aprobar, excluyendo comentarios:

No hay documentos pendientes de aprobación

Lista de cambios recientes excluyendo comentarios:

https://www.dokuwiki.org/plugin%3Asnippets

Agrega botoncitos para insertar plantillas de texto, serviria para linkear las carpetas de drive y esas cosas…

Para que sea util deberia poder usar macros, pero para eso hay que editar los templates: https://www.dokuwiki.org/namespace%20templates

Y para editar los templates hace falta esto: https://www.dokuwiki.org/plugin:templatepagename

No era tan facil…

20210430 - Sin espacio y páginas en blanco

La VM se quedo sin espacio (apt estaba usando 5 gb en /var/cache por algun motivo).

Parece que a dokuwiki no le gusta que la máquina se quede sin espacio. Pero en vez de avisar, se comporta de manera rara…

Me dejaba editar, pero varios sitios que tenían contenido empezaron a aparecer “en blanco”. Al editarlos, su contenido estaba ahí, pero no se mostraba en el render final. 🤷

Por ejemplo, dejó de verse la barra lateral, y tampoco se mostraba la página principal.

Otra cosa rara es que si bien no se renderizaba, el menú de navegación (para saltar entre títulos de una página) si estaba ahí… con todas las entradas.

Una vez que liberé espacio en la VM, visité cada sitio, y varios seguían en blanco. Se solucionó haciendo algún cambio mínimo y guardando.

Hice eso con todos los sitios, y parece que ahora todo está bien.

Usar: scripts.zip

Sintaxis: ./script.sh CARPETA

Importante: es recursivo!

Después se copa la carpeta a una nueva, omitiendo los archivos html originales y los intermediarios:

rsync -avr --exclude='*.html' --exclude='*.md' --exclude='*tmp' frubox-unsam-copia/ frubox-unsam-doku

Desde el panel de administración (link).

https://www.dokuwiki.org/attic

Borrar líneas de meta/PAGINA.changes no borra las revisiones realmente, solo las quita del menú de revisiones. Las páginas viejas todavía son accesibles a través de un enlace del estilo https://wiki.frubox.org/proyectos/linux?rev=1577925185

Ya sea porque Apache tiene su caché, o porque todavía está el archivo original. Los archivos de las revisiones están realmente en data/attic/. Si el archivo en esa carpeta se borra, la página de la revisión vieja deja de existir.

Si se restaura el archivo, la página de esa revisión vuelve a aparecer.

Instalé un plugin bastante útil 😍 pero me gustaría usar esto https://openmoji.org/

Hay que renovarla cada 90 días.

Seguí la guía de bitnami. Acá hay más detalles.

Al final seguí esta solución.

sudo /opt/bitnami/letsencrypt/lego --path /opt/bitnami/letsencrypt --email="el@mail.com" --http --http-timeout 30 --http.webroot /opt/bitnami/apps/letsencrypt --domains=wiki.frubox.org renew
sudo /opt/bitnami/apache2/bin/httpd -f /opt/bitnami/apache2/conf/httpd.conf -k graceful
       ___ _ _                   _
| _ |_) |_ _ _  __ _ _ __ (_)
| _ \ |  _| ' \/ _` | '  \| |
|___/_|\__|_|_|\__,_|_|_|_|_|
 
  *** Welcome to the Bitnami DokuWiki 20180422b-4 ***
  *** Documentation:  https://docs.bitnami.com/google/apps/dokuwiki/ ***
  ***                 https://docs.bitnami.com/google/ ***
  *** Bitnami Forums: https://community.bitnami.com/ ***
user@computer:~$ sudo /opt/bitnami/bncert-tool
An updated version is available. Would you like to download it? You would need to run it manually later. [Y/n]: Y
 
The tool will exit now. To run the updated version run the following command:
 
/opt/bitnami/bncert-tool
 
user@computer:~$ sudo crontab -l -u bitnami
 
0 0 1 * * sudo /opt/bitnami/letsencrypt/lego --path /opt/bitnami/letsencrypt --email="email@example.com" --http --http-timeout 30 --http.webroot /opt/bitnami/apps/letsencrypt --domains=wiki.frubox.org renew && sudo /opt/bitnami/apache2/bin/httpd -f /opt/bitnami/apache2/conf/httpd.conf -k graceful # bncert-autorenew
 
user@computer:~$ sudo /opt/bitnami/letsencrypt/lego --path /opt/bitnami/letsencrypt --email="email@example.com" --http --http-timeout 30 --http.webroot /opt/bitnami/apps/letsencrypt --domains=wiki.frubox.org renew && sudo /opt/bitnami/apache2/bin/httpd -f /opt/bitnami/apache2/conf/httpd.conf -k graceful
2019/08/16 18:44:22 [INFO] [wiki.frubox.org] acme: Trying renewal with 0 hours remaining
2019/08/16 18:44:22 [INFO] [wiki.frubox.org] acme: Obtaining bundled SAN certificate
2019/08/16 18:44:22 [INFO] [wiki.frubox.org] AuthURL:
2019/08/16 18:44:22 [INFO] [wiki.frubox.org] acme: Could not find solver for: tls-alpn-01
2019/08/16 18:44:22 [INFO] [wiki.frubox.org] acme: use http-01 solver
2019/08/16 18:44:22 [INFO] [wiki.frubox.org] acme: Trying to solve HTTP-01
2019/08/16 18:44:29 [INFO] [wiki.frubox.org] The server validated our request
2019/08/16 18:44:29 [INFO] [wiki.frubox.org] acme: Validations succeeded; requesting certificates
2019/08/16 18:44:30 [INFO] [wiki.frubox.org] Server responded with a certificate.

En teoría esto hace que Google indexe el sitio por URL en vez de por IP.

sudo nano /opt/bitnami/apache2/conf/bitnami/bitnami.conf
sudo /opt/bitnami/ctlscript.sh restart apache

Editar y reiniciar apache después.

# Default Virtual Host configuration.
 
<IfVersion < 2.3 >
  NameVirtualHost *:80
  NameVirtualHost *:443
</IfVersion>
 
<VirtualHost _default_:80>
  DocumentRoot "/opt/bitnami/apache2/htdocs"
  RewriteEngine On
  RewriteCond %{HTTP_HOST} ^35\.198\.17\.227
  RewriteCond %{HTTP_HOST} !^(localhost|127.0.0.1)
  RewriteRule ^/(.*)  https://wiki.frubox.org/$1 [R=301,L]
  # BEGIN: Enable HTTP to HTTPS redirection
  RewriteCond %{HTTPS} !=on
  RewriteCond %{HTTP_HOST} !^(localhost|127.0.0.1)
  RewriteCond %{REQUEST_URI} !^/\.well-known
  RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [R,L]
  #RewriteRule ^/(.*) https://wiki.frubox.org/$1 [R,L]
  # END: Enable HTTP to HTTPS redirection
  <Directory "/opt/bitnami/apache2/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride All
    <IfVersion < 2.3 >
      Order allow,deny
      Allow from all
    </IfVersion>
    <IfVersion >= 2.3 >
      Require all granted
    </IfVersion>
  </Directory>
 
  # Error Documents
  ErrorDocument 503 /503.html
 
  # Bitnami applications installed with a prefix URL (default)
  Include "/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf"
</VirtualHost>

Este tutorial es increíble.

Lo que no sé, es cómo integrarlo con dokuwiki 😕 quizás con Onesignal.

<head>
  <link rel="manifest" href="/manifest.json">
  <script src="https://cdn.onesignal.com/sdks/OneSignalSDK.js" async></script>
  <script>
    var OneSignal = window.OneSignal || [];
    OneSignal.push(["init", {
      appId: "YOUR_APP_ID"
    }]);
  </script>
</head>

Para intsertar Hypothes.is en la wiki, edité el template de Bootstrap:

sudo nano /opt/bitnami/apps/dokuwiki/htdocs/lib/tpl/bootstrap3/main.php

Y le enchufé esto al final del head:

<script type="text/javascript" async>
    if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Kindle|Silk|Opera Mini/i.test(navigator.userAgent)) {
        alert(alert("Bienvenidx a la nueva wiki de Frubox \u{1F333}.\n\nPara usar Hypothes.is en esta wiki, entrá desde una compu.\n\nToca aceptar/OK para continuar. Provecho!"););
    } else {
        var script = document.createElement("script");
        script.type = "text/javascript";
        //src="https://hypothes.is/embed.js" async
        script.src = "https://hypothes.is/embed.js"; 
        // https://stackoverflow.com/questions/14666658/document-createelementscript-vs-script-src
        // https://www.w3schools.com/jsref/dom_obj_script.asp
        script.async = true
        document.getElementsByTagName("head")[0].appendChild(script);
    }
</script>

https://stackoverflow.com/questions/24768067/display-alert-only-once

<script type="text/javascript">
    var alerted = localStorage.getItem('alerted') || '';
    if (alerted != 'yes') {
     alert("My alert.");
     localStorage.setItem('alerted','yes');
    }
</script>

Ver extensiones instaladas en la página de administración.

  • wiki/devel.txt
  • Última modificación: 2022/05/12 07:44
  • por wishmaster