07 · EXTRAS
Accesos rápidos, trucos y utilidades
Una caja de herramientas para el trabajo diario: enlaces locales, copias, favicon, caché, comandos y pequeños trucos de navegador.
> web-on
> web-status
> rsync
> Ctrl+Mayús+R
> favicon.ico
> herramientas extra_
1. Accesos y enlaces útiles
Accesos locales del proyecto
Esta captura reúne varios accesos que utilizamos o consultamos durante el proyecto:
| Servicio | Dirección | Uso |
|---|---|---|
| Webmin | https://localhost:10000/ | Administración de Linux. |
| Apache / XAMPP | http://localhost:8080/ | Servidor web local. |
| XNENEX (Alias) | http://localhost:8080/xnenex/ | Proyectos servidos mediante nuestro Alias. |
| phpMyAdmin | http://localhost:8080/phpmyadmin/ | Administración de MariaDB. |
| Tuto XAMPP | http://localhost:8080/xnenex/tutoxampp/ | Esta documentación instalada en el servidor local. |
Proyecto Faucet
| Acceso | Dirección | Uso |
|---|---|---|
| Faucet actual | http://localhost:8080/xnenex/faucet/faucetinabox-ultimate-r118/ | Ejemplo real de Faucet in a Box Ultimate R118 funcionando en local. |
| Administración Faucet | .../faucetinabox-ultimate-r118/admin.php | Panel administrativo local. No debe publicarse sin protección. |
Publicación y acceso exterior
| Servicio | Enlace | Uso |
|---|---|---|
| Cloudflare | Dashboard de Cloudflare | Cuenta, dominios, DNS y túneles. |
| Cloudflare Tunnel | Documentación de Cloudflare Tunnel | Documentación oficial de túneles. |
| Tailscale | tailscale.com | Red privada entre nuestros dispositivos; ideal para una intranet privada. |
| ngrok | ngrok.com | Túnel público HTTPS hacia un servicio local, útil para pruebas y demos. |
Código y publicación estática
| Servicio | Enlace | Uso |
|---|---|---|
| GitHub | github.com | Repositorios y control de versiones. |
| GitHub Pages | pages.github.com | Publicación gratuita de webs estáticas. |
Promoción y monetización
| Servicio | Enlace | Uso |
|---|---|---|
| Google AdSense | Google AdSense | Solicitud y gestión de monetización publicitaria cuando la web esté publicada y cumpla los requisitos. |
| YouTube | youtube.com | Crear o utilizar un canal para difundir tutoriales y promocionar la web. |
Herramientas del servidor
| Proyecto | Enlace | Uso |
|---|---|---|
| Apache Friends / XAMPP | apachefriends.org | XAMPP, Apache, PHP y MariaDB para desarrollo. |
| Webmin | webmin.com | Panel de administración del sistema. |
| phpMyAdmin | phpmyadmin.net | Administración web de MySQL/MariaDB. |
2. Tailscale y ngrok: acceso privado y túnel público
Tailscale conecta móvil, Chromebook, PC y otros equipos dentro de una red privada cifrada. No hace falta abrir el puerto 8080 al Internet público.
Instalar y conectar Tailscale en Linux
La instalación oficial para Linux puede hacerse con:
curl -fsSL https://tailscale.com/install.sh | sh
Después iniciamos la conexión:
sudo tailscale up
La Terminal mostrará una URL para autenticar el equipo en nuestra cuenta de Tailscale. Una vez autorizado, comprobamos el estado y consultamos su IP:
tailscale status
tailscale ip -4
La IP suele ser del tipo 100.x.y.z. Desde otro dispositivo de la misma tailnet, el acceso a nuestra web sería:
http://100.x.y.z:8080/xnenex/
Con MagicDNS también puede usarse el nombre del equipo:
http://NOMBRE-DEL-EQUIPO:8080/xnenex/
Cómo localizar las distintas IP
- Windows:
ipconfigya viene incluido; no se descarga. - Linux/Chromebook:
hostname -Ioip addrpara la IP local;tailscale ip -4para la IP Tailscale. - Android/iPhone: Ajustes → Wi-Fi → detalles de la red para la IP local; la app de Tailscale muestra la IP Tailscale del dispositivo.
- Navegador: una web de “cuál es mi IP” muestra normalmente la IP pública de salida a Internet, no la IP local ni la de Tailscale.
ngrok como alternativa de túnel público
ngrok hace una función parecida a Cloudflare Tunnel: el agente crea una conexión saliente hacia ngrok y entrega una URL pública HTTPS.
En Debian/Linux podemos instalar el agente mediante APT:
curl -sSL https://ngrok-agent.s3.amazonaws.com/ngrok.asc \
| sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null
echo "deb https://ngrok-agent.s3.amazonaws.com bookworm main" \
| sudo tee /etc/apt/sources.list.d/ngrok.list
sudo apt update
sudo apt install ngrok -y
Después añadimos el token de nuestra cuenta de ngrok:
ngrok config add-authtoken "<TU_AUTHTOKEN>"
Con XAMPP en el puerto 8080, iniciamos el túnel con:
ngrok http 8080
La URL pública asignada por ngrok se usaría añadiendo nuestro Alias, por ejemplo https://direccion-asignada.ngrok.app/xnenex/.
3. Comandos rápidos del entorno
Tenemos dos formas de controlar el servidor: el menú interactivo web explicado en Linux y los alias directos explicados en Servidor.
actualizar
web
web-on
web-status
web-restart
web-off
web abre un menú. Los cuatro alias ejecutan directamente la acción indicada.4. Herramientas de copia y archivos
rsync sirve para copiar y sincronizar carpetas. Su instalación, las distintas modalidades de copia y los ejemplos están explicados en la sección Linux.
PeaZip queda como interfaz gráfica principal para ZIP/7Z y 7-Zip/p7zip como herramienta de consola. Xarchiver se considera prescindible.
5. Favicon
Nuestro favicon está en la raíz:
tutoxampp/favicon.ico
En index.html, que está en la raíz:
<link rel="icon" href="favicon.ico" type="image/x-icon">
En las páginas de menu/:
<link rel="icon" href="../favicon.ico" type="image/x-icon">
Si Chrome conserva un icono antiguo, prueba una recarga fuerte:
Ctrl + Mayús + R
6. Desactivar el botón derecho
Este código es opcional y pertenece al JavaScript de la web. Si queremos aplicarlo, debemos añadirlo al archivo:
tutoxampp/assets/js/app.js
Desde Linux podemos abrir ese archivo con:
nano "/mnt/shared/GoogleDrive/MyDrive/---@web/www/@public_html/tutoxampp/assets/js/app.js"
Al final del archivo añadimos:
document.addEventListener('contextmenu', function (e) {
e.preventDefault();
});
Guardamos con Ctrl + O, pulsamos Enter y salimos con Ctrl + X.
<script> en cada página porque Tuto XAMPP ya carga
assets/js/app.js.
7. Evitar selección o arrastre
Estos eventos también se añadirían a tutoxampp/assets/js/app.js, igual que el ejemplo anterior.
Podemos abrir el archivo con:
nano "/mnt/shared/GoogleDrive/MyDrive/---@web/www/@public_html/tutoxampp/assets/js/app.js"
Al final del archivo podemos añadir:
document.addEventListener('selectstart', function (e) {
e.preventDefault();
});
document.addEventListener('dragstart', function (e) {
e.preventDefault();
});
Guardamos con Ctrl + O, pulsamos Enter y salimos con Ctrl + X.
8. robots.txt y sitemap.xml
Estos dos archivos pertenecen a la publicación de la web, así que los dejamos en Extras como tarea de acabado y no dentro de Cloudflare ni del tutorial principal de GitHub.
robots.txt
robots.txt indica a los robots de los buscadores qué zonas pueden rastrear. Debe colocarse en la raíz de la web publicada.
User-agent: *
Allow: /
Sitemap: https://TU-DOMINIO-O-USUARIO.github.io/tutoxampp/sitemap.xml
sitemap.xml
sitemap.xml contiene las páginas que queremos que los buscadores conozcan. También debe quedar en la raíz de la web.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://TU-DOMINIO-O-USUARIO.github.io/tutoxampp/</loc>
</url>
</urlset>
9. Diagnóstico exprés
web-status
sudo netstat -tulpn | grep -E '(:8080|:8081|:8085|:10000)'
sudo /opt/lampp/bin/apachectl -t
tail -n 30 /opt/lampp/logs/error_log