|
Pages: [1]
|
 |
|
Auteur
|
Sujet: Mon script fonctionne sur windows mais pas sur linux :( (Lu 464 fois)
|
kedare
Jr. Member
 
Sexe: 
Messages: 57
Python Power !
|
Salut ! j'ai un probleme j'ai creer un script de serveur HTTP , il fonctionne parfaitement sur windows , mais sur linux , au moment de l'activation j'ai une erreur : kedare@mathieu ~]$ python HTTP_Server.py Bienvenue sur le serveur HTTP de Kedare Programme Creer avec Python ! S.v.p , Veuillez Selectionner le Port et le repertoire de base Port Conseillé : 80) PORT : 80 REPERTOIRE DE BASE SERVEUR : /home/kedare/ ADRESSE DU SERVEUR : http://localhost ###################### LOG ###################### Traceback (most recent call last): File "HTTP_Server.py", line 25, in ? serv = HTTPServer( ("", PORT), SimpleHTTPRequestHandler) File "/usr/lib/python2.4/SocketServer.py", line 330, in __init__ self.server_bind() File "/usr/lib/python2.4/BaseHTTPServer.py", line 99, in server_bind SocketServer.TCPServer.server_bind(self) File "/usr/lib/python2.4/SocketServer.py", line 341, in server_bind self.socket.bind(self.server_address) File "<string>", line 1, in bind socket.error: (13, 'Permission denied') [kedare@mathieu ~]$ Voila le code Source : #!/usr/bin/python # -*- coding: UTF-8 -*-
print "Bienvenue sur le serveur HTTP de Kedare" print " " print "Programme Creer avec Python !" print " " print " " print "S.v.p , Veuillez Selectionner le Port et le repertoire de base" print "Port Conseillé : 80)" PORT = input(' PORT : ') BASE = raw_input(' REPERTOIRE DE BASE SERVEUR : ') if PORT == 80: ADDR = "http://localhost" else: ADDR = "http://localhost:"+ str(PORT)
print " ADRESSE DU SERVEUR : "+ ADDR from BaseHTTPServer import HTTPServer from SimpleHTTPServer import SimpleHTTPRequestHandler import os
os.chdir(BASE) # le répertoire où les pages html seront stoquées. print " ###################### LOG ######################" serv = HTTPServer( ("", PORT), SimpleHTTPRequestHandler) serv.serve_forever()
j'ai remarquer que quand je choisit un port de tres haut niveau ca fonctionne .... A+
|
|
|
|
« Dernière édition: 24 Septembre 2005, 20:15:07 par kedare »
|
Journalisée
|
|
|
|
|
Lawouach
|
Les ports 0 à 1024 sont réservés et ne peuvent pas etre utilisés par des applis utilisateurs (ie non root) sous Linux.
|
|
|
|
|
Journalisée
|
|
|
|
kedare
Jr. Member
 
Sexe: 
Messages: 57
Python Power !
|
Les ports 0 à 1024 sont réservés et ne peuvent pas etre utilisés par des applis utilisateurs (ie non root) sous Linux.
Ha ok Merci  Ps : Existe t-il une fonction qui permet de quiter le programme ? j'aimerais pouvoir arreter le serveur depuis le terminal , mais avec les log qui defille c'est pas possible ... (essayez le script vous verrez) , meme en creans un input ca ne veut pas :/
|
|
|
|
|
Journalisée
|
|
|
|
|
Lawouach
|
si tu veux garder la main dans la console quand ton programme s'exécute tu fais :
./mon_prog &
Le & indique au terminal de te rendre la main et de faire tourner le programmae en arrière plan. Pour tuer ce programme tu dois retrouver son PID (process ID)via la commande ps aux. Ensuiet tu tapes kill -9 PID avec le PID qui est le numéro fourni dans le résultat de ps aux.
|
|
|
|
|
Journalisée
|
|
|
|
|
tetram9
|
kedare@mathieu ~]$ python HTTP_Server.py Bienvenue sur le serveur HTTP de Kedare
Programme Créé avec Python !
Sinon, comme ça a déjà été dit, ce doit être un problème de port, le 80 n'est pas libre par défaut, il faut être root pour pouvoir utiliser un port entre 0 et 1024.
|
|
|
|
|
Journalisée
|
|
|
|
Gmartintin
Full Member
  
Sexe: 
Messages: 213
Shaoulah lover
|
Globalement, même sous Windows, c'est pas forcément conseillé de s'amuser avec des ports "bas"
|
|
|
|
|
Journalisée
|
Sex, Drugs and Mangue.org
|
|
|
|
tetram9
|
Globalement, même sous Windows, c'est pas forcément conseillé de s'amuser avec des ports "bas"
+1 Tout à fait 
|
|
|
|
|
Journalisée
|
|
|
|
|
|
Pages: [1]
|
|
|
 |