Passos per muntar un servidor local Deepin amb Python

Passos per muntar un servidor local Deepin amb Python

1. Obre el terminal
Ctrl + Alt + T (o busca «Terminal» al llançador).

2. Comprova que Python 3 hi és

python3 -V

Deepin ja porta Python 3 de sèrie. Si no hi fos:

sudo apt update && sudo apt install python3

3. Vés al directori que vols publicar

cd ~/Desktop/dic-deepin

Consell: evita rutes amb espais o accents si vols compartir a la xarxa local.

4. Engega el servidor

/home/Miquel/dropbox/apps_mut/python3 servidor.py

/home/Miquel/Desktop/dic-deepin/servidor.py
python3 -m http.server

Per defecte serveix el contingut del directori actual al port 8000, i mostra index.html automàticament si existeix.

5. Obre’l al navegador

http://localhost:8000

Veureu la llista de fitxers; feu clic al que vulgueu obrir.

6. Opcions útils

ObjectiuComanda
Canviar el portpython3 -m http.server 8888
Publicar un altre directoripython3 -m http.server 8000 --directory ~/Documents/web
Compartir a la xarxa localpython3 -m http.server 8000 --bind 0.0.0.0
Només accessible des del teu equippython3 -m http.server 8000 --bind 127.0.0.1

Per compartir a la xarxa, els altres hauran d’entrar a http://LA-TEVA-IP:8000 (consulta la IP amb ip a). Si no hi accedeixen, revisa el tallafocs: sudo ufw allow 8000/tcp.

7. Atura el servidor
Ctrl + C al terminal on s’executa.

⚠️ http.server és només per a proves i compartir fitxers temporalment: no té autenticació ni concurrència real. Per a producció, fes servir Nginx o Apache.


Els punts per fer la connexió persistent

Per fer que el servidor Python s’executi automàticament després de cada reinici, el millor és crear un servei systemd. Així el sistema l’arrencarà sol, sense que hagis d’obrir cap terminal manualment.

Pas 1: Crea el fitxer de servei

Obre un terminal i executa:

sudo nano /etc/systemd/system/mesurador-espai.service

Enganxa-hi aquest contingut (adapta la ruta si cal):

[Unit]
Description=Servidor Mesurador d'Espai de Directoris
After=network.target

[Service]
Type=simple
User=Miquel
WorkingDirectory=/home/Miquel/dropbox/espai_nuvol_8080
ExecStart=/usr/bin/python3 /home/Miquel/dropbox/espai_nuvol_8080/serv_8086.py
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

per exemple:

Miquel@Miquel-PC:~$ cat /etc/systemd/system/mesurador-espai.service
[Unit]
Description=Servidor Mesurador d’Espai de Directoris
After=network.target

[Service]
Type=simple
User=Miquel
WorkingDirectory=/home/Miquel/dropbox/espai_nuvol_163
ExecStart=/usr/bin/python3 /home/Miquel/dropbox/espai_nuvol_163/serv_163.py
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
Miquel@Miquel-PC:~$


Punts importants:

  • User=Miquel → Executa el servei amb el teu usuari (no com a root).
  • WorkingDirectory → La carpeta on tens el script.
  • ExecStart → Ruta absoluta al Python i al teu script.
  • Restart=on-failure → Si el servidor cau, systemd el torna a arrencar sol.

Guarda amb Ctrl+O, Enter, i surt amb Ctrl+X.

Pas 2: Activa el servei

# Recarrega systemd per detectar el nou fitxer
sudo systemctl daemon-reload

# Activa el servei perquè arrenqui amb el sistema
sudo systemctl enable mesurador-espai.service

# Arrenca'l ara mateix (sense haver de reiniciar)
sudo systemctl start mesurador-espai.service

Pas 3: Verifica que funciona

# Comprova l'estat
sudo systemctl status mesurador-espai.service

# Veure els logs si hi ha errors
sudo journalctl -u mesurador-espai.service -f

Hauries de veure algo com:

● mesurador-espai.service - Servidor Mesurador d'Espai de Directoris
     Loaded: loaded (/etc/systemd/system/mesurador-espai.service; enabled; ...)
     Active: active (running) since ...

Comandaments útils per al futur

sudo systemctl stop mesurador-espai.service      # Aturar
sudo systemctl restart mesurador-espai.service   # Reiniciar
sudo systemctl disable mesurador-espai.service   # Desactivar l'arrencada automàtica

Verificació final

Després d’un reinici del PC, obre el navegador i ves a:

http://192.168.1.163:8086

Hauria de funcionar sense que hagis fet res.

Nota: Assegura’t que el teu script serv_8086.py té la IP d’escolta configurada com 0.0.0.0 o 192.168.1.163 (no 127.0.0.1), perquè així acceptarà connexions des de la xarxa local.

Prova-ho i digue’m si trobes cap problema!




Canvi de port de servidor local deepin

Sí, cap problema. I de fet 8084 és millor tria que el 8080: està més enllà dels ports que solen ocupar els serveis habituals, així que és més difícil que et toqui algú altre.

Els sed que et poso funcionen tant si ara ets al 8000 com al 8080, perquè busquen el patró, no el número concret.

Primer, comprova que és lliure

ss -ltnp | grep :8084

Si no surt res, endavant.

Els quatre canvis

cd /home/Miquel/dropbox/apps_mut

# 1. El codi (l'únic funcional)
sed -i -E 's/^PORT = [0-9]+/PORT = 8084/' servidor.py
grep -n "^PORT" servidor.py

# 2. El llançador d'escriptori
sed -i -E 's/localhost:80[0-9]{2}/localhost:8084/g' ~/.local/share/applications/espai-web.desktop

# 3. La descripció del servei
sed -i -E 's/localhost:80[0-9]{2}/localhost:8084/g' ~/.config/systemd/user/espai-web.service

# 4. La documentació
sed -i -E 's/(localhost|127\.0\.0\.1):80[0-9]{2}/\1:8084/g' README.md

Recarregar i reiniciar

systemctl --user daemon-reload
systemctl --user restart espai-web.service

I al navegador

http://localhost:8084 — i actualitza el marcador, que el del 8000 ja no et servirà.