Serveur web python raspberry

artemis0 Messages postés 903 Date d'inscription   Statut Membre Dernière intervention   -  
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

j'ai désinstallé nginx de ma raspberry car je veux tester un programme de serveur web python, mais après la désinstallation, quand je fais 127.0.0.1, j'ai encore une erreur 403 forbiden de nginx. comment désinstaller totalement nginx ?

pour le désinstaller, j'avais fait sudo
apt-get remove nginx php5-fpm
, et la désinstallation s'est pourtant bien effectuée...

je précise que je débute sur raspberry

merci
A voir également:

1 réponse

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

sudo apt-get remove nginx nginx-common 

sudo apt-get purge nginx nginx-common

1
artemis0 Messages postés 903 Date d'inscription   Statut Membre Dernière intervention   179
 
merci zipe. ça fonctionne.
pourrais-tu m'aider pour mon serveur web python ? stp
dans
/home/pi
, j'ai créé un fichier .py dans lequel j'ai mis :
#!/usr/bin/python3

import http.server

PORT = 8888
server_address = ("", PORT)

server = http.server.HTTPServer
handler = http.server.CGIHTTPRequestHandler
handler.cgi_directories = ["/"]
print("Serveur actif sur le port :", PORT)

httpd = server(server_address, handler)
httpd.serve_forever()


je l'enregistre
dans le terminal je mets :
pi@raspberrypi / $ sudo python /home/pi/svwebpython/hello.py


mais ça me met une erreur :
pi@raspberrypi / $ sudo python /home/pi/svwebpython/hello.py
Traceback (most recent call last):
File "/home/pi/svwebpython/hello.py", line 3, in <module>
import http.server
ImportError: No module named http.server
pi@raspberrypi / $


est-ce un problème de librairie ?
sachant que mon but, ici, est d'héberger un site : basique : html et css. et il faut qu'une variable python puisse être affichée sur le site. a l'origine, c'est la variable d'un capteur branché sur une arduino elle même branchée sur raspberry par i2c, port série, ou usb. et j'ai vu sur internet quelques exemples un peu semblables, donc je pense que ça devrait être possible. donc j'ai pensé que plutot d'installer des serveur web type nginx apache, pourquoi ne pas essayer un serveur web python, vu que j'utiliserai surement un programme python pour récupérer la variable sur la arduino. et il faut que la variable du capteur s'affiche sur le site.

sais-tu si c'est possible ? (peut-être que je fais tout ça pour rien...)
le lien du tuto : https://python.doctor/page-python-serveur-web-creer-rapidement

merci pour ton aide !!
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431 > artemis0 Messages postés 903 Date d'inscription   Statut Membre Dernière intervention  
 
sudo python /home/pi/svwebpython/hello.py

Essaye plutôt avec
sudo python3 /home/pi/svwebpython/hello.py
0
artemis0 Messages postés 903 Date d'inscription   Statut Membre Dernière intervention   179
 
merci zipe, ça fonctionne (partiellement ^^)

comme dans le tuto, j'ai aussi créé un fichier index.py
dans lequel j'ai mis :
#!/usr/bin/python3
# -*- coding: utf-8 -*

import cgi

form = cgi.FieldStorage()
print("Content-type: text/html; charset=utf-8\n")

print(form.getvalue("name"))

html = """<!DOCTYPE html>
<head>
<title>Mon programme</title>
</head>
<body>
<form action="/index.py" method="post">
<input type="text" name="name" value="Votre nom" />
<input type="submit" name="send" value="Envoyer information au serveur">
</form>
</body>
</html>
"""

print(html)


j'ai ensuite refait :
pi@raspberrypi ~ $ sudo python3 /home/pi/svwebpython/hello.py

mais ça me met :
pi@raspberrypi ~ $ sudo python3 /home/pi/svwebpython/hello.py
Serveur actif sur le port : 8888
127.0.0.1 - - [17/Jan/2016 13:11:07] code 404, message No such CGI script ('//index.py')
127.0.0.1 - - [17/Jan/2016 13:11:07] "GET /index.py HTTP/1.1" 404 -
127.0.0.1 - - [17/Jan/2016 13:11:27] code 404, message No such CGI script ('//index.py')
127.0.0.1 - - [17/Jan/2016 13:11:27] "GET /index.py HTTP/1.1" 404 -
127.0.0.1 - - [17/Jan/2016 13:11:28] code 404, message No such CGI script ('//index.py')
127.0.0.1 - - [17/Jan/2016 13:11:28] "GET /index.py HTTP/1.1" 404 -
127.0.0.1 - - [17/Jan/2016 13:11:49] code 404, message No such CGI script ('//index.py')
127.0.0.1 - - [17/Jan/2016 13:11:49] "GET /index.py HTTP/1.1" 404 -


dans mon navigateur sur rpi, j'ai tenté de me connecter à
http://localhost:8888/index.py

mais dans la page web ça me met :
Error response

Error code: 404

Message: No such CGI script ('//index.py').

Error code explanation: 404 - Nothing matches the given URI.


sachant que à chaque fois que dans mon navigateur j'actualise la page
http://localhost:8888/index.py
ça me met dans le terminal :
127.0.0.1 - - [17/Jan/2016 13:11:07] code 404, message No such CGI script ('//index.py')
127.0.0.1 - - [17/Jan/2016 13:11:07] "GET /index.py HTTP/1.1" 404 -

donc ces lignes sont affichées autant de fois que j'appuie sur actualiser dans mon navigateur

merci pour l'aide que tu m'apportes
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431 > artemis0 Messages postés 903 Date d'inscription   Statut Membre Dernière intervention  
 
Parce que dans ton 1er script (hello.py) il faut renseigner le chemin vers ton répertoire où se trouve tes fichiers. Donc remplacer :
handler.cgi_directories = ["/"]

Par :
handler.cgi_directories = ["/home/pi/svwebpython"]
0
artemis0 Messages postés 903 Date d'inscription   Statut Membre Dernière intervention   179
 
merci zipe.
par contre j'ai toujours des erreurs :
pi@raspberrypi / $ sudo python3 /home/pi/svwebpython/hello.py
Serveur actif sur le port : 8888
Traceback (most recent call last):
File "/home/pi/svwebpython/hello.py", line 13, in <module>
httpd = server(server_address, handler)
File "/usr/lib/python3.4/socketserver.py", line 429, in __init__
self.server_bind()
File "/usr/lib/python3.4/http/server.py", line 133, in server_bind
socketserver.TCPServer.server_bind(self)
File "/usr/lib/python3.4/socketserver.py", line 440, in server_bind
self.socket.bind(self.server_address)
OSError: [Errno 98] Address already in use
pi@raspberrypi / $



d'après ce que je comprends, il ya un problème dans hello.py ligne 13
ça veut dire que je dois mettre quelque chose à la place de server_adress ?
0