Gå til innhold

Kjøre .py fil på ekstern web server?


Anbefalte innlegg

Skrevet

Har nå kjøpt meg web server, hvor jeg skal prøve å få satt opp en liga manager for et brettspill. I denne liga manager pakken er det da bruk av python. På web serveren min står det at de har støtte for python, jeg lurer da på hvordan jeg får "kjørt" og "initiert" en fil som heter server.py på denne serveren?

 

Har spurt de på teknisk hos leverandøren av web hotellet. De mente jeg måtte høre med noen som kan python. (Antakeligvis har jeg misforstått hvordan man får initiert python filer.)

 

Lokalt så finner jeg masse dokumentasjon, men fra web server blir det mer utydelig. Sånn jeg har tenkt det er at jeg kan laste opp server.py til en lokasjon på serveren, og peke til denne via web browseren men dette fungerte ikke.

 

Har noen tips?

 

Python skal ligge i usr/bin/python ifølge serveren.

 

Mvh

Jørgen

Videoannonse
Annonse
Skrevet
Har nå kjøpt meg web server, hvor jeg skal prøve å få satt opp en liga manager for et brettspill. I denne liga manager pakken er det da bruk av python. På web serveren min står det at de har støtte for python, jeg lurer da på hvordan jeg får "kjørt" og "initiert" en fil som heter server.py på denne serveren?

Det er vanskelig å svare generelt på dette uten å vite hva slags hosting-miljø du benytter og hva de støtter. "Støtter Python" betyr i grunnen ingenting.

 

Python kan deployes til webservere i ganske mange varianter:

 

* CGI; god gammeldags CGI kan benyttes, da må du konfigurere webserveren til å eksekvere .py-filer som CGI. Ofte må de da ligge i cgi-bin/ eller lignende.

 

* mod_python; hvis du kjører på Apache og den har mod_python støtte kan du benytte dette.

 

* mod_wsgi; hvis du kjører Apache eller lighttpd kan mod_wsgi benyttes. WSGI er et litt mer moderne grensesnitt enn mod_python.

 

* FastCGI; de fleste moderne webservere støtter nå FastCGI som egentlig ikke ligner så veldig på CGI, til tross for navnet.

 

Som du skjønner er det mange måter å "kjøre" python på en webserver på... Felles for alle måtene er at du må vite hva du skal bruke :) Du kan ikke bare skrive et program og hekte det inn på hva som helst. Skal du bruke noe annet enn CGI bør du bruke et rammeverk; Django, web.py, Turbogears eller noe annet.

 

Nøyaktig hva er det i denne ligamanager-pakken? Er det en samling moduler du har skrevet selv? Eller er det noe noen andre har skrevet, og har de skrevet det for web? I så fall har de jo skrevet det med et rammeverk eller med et deployingsgrensesnitt i tankene.

Skrevet (endret)

Hei. Takk for svar.

 

Følgende er snappet fra hosten sin hjemmeside: (http://www.servage.com/)

 

#

Private CGI-BIN

Your own Common Gateway Interface environment. [?]

 

#

CGI/Perl

Common Gateway Interface and Per Support [?]

 

#

Python Support

Include Python scripts in your projects.

 

 

-----------

 

Selve prosjektet er det ikke jeg som har laget. (skjønner du sikkert ut ifra kunnskapen min)

Link til prosjektet: http://nuffle.sourceforge.net/

 

 

Bl.a. står følgende under installasjonsveiledningen:

 

 

 

Step 5: Create the Nuffle schema in your Nuffle database. Assuming

you've managed to configure yourself correctly, just do this:

 

python2.4 ./src/data.py

 

The Python "data" module when executed directly will recreate all

of the necessary tables in your database, and install a base set

of starting data (races, skills, etc).

 

Now create your database indexes:

 

mysql -u nuffle -p nuffle < ./bin/createIndexes.sql

 

--OR--

 

psql -U nuffle nuffle < ./bin/createIndexes.sql

 

 

Step 6: Launch the web manager:

 

python2.4 ./src/server.py

 

 

 

 

Setter stor pris på videre hjelp. =)

 

 

Litt tilleggsinfo:

 

Where is cgi-bin?

 

At Servage Hosting we allow you to place your Perl/CGI files in any directory you would like as long as you use one of these file extensions .pl or .cgi. If you would like a cgi-bin directory simply create one in the /www folder via your FTP client or via the online file manager in the control panel.

Endret av -JørgenG-
Skrevet
Python Support

Include Python scripts in your projects.

Som sagt... dette betyr ingenting direkte, de må si noe mer nøyaktig enn det. Skal jeg tippe så betyr det at de har python installert og det er det. Dermed står du igjen med CGI. Men det kan jo være at jeg tipper feil.

 

Selve prosjektet er det ikke jeg som har laget. (skjønner du sikkert ut ifra kunnskapen min)

Link til prosjektet: http://nuffle.sourceforge.net/

Ut i fra første øyekast ser det ut som Nuffle bruker CherryPy, som er et web-rammeverk. CherryPy bruker vel vanligvis FastCGI eller WSGI tror jeg, men jeg har ikke direkte erfaring med CherryPy så jeg vet ikke. Finn ut av hva hosten din støtter og google det sammen med cherrypy så finner du kanskje noe :) For alt jeg vet kan man kanskje kjøre CherryPy som CGI.

Skrevet

Koble til serveren med ssh, for så å starte server.py?

 

Webhotellet må jo da ha en sshserver oppe til deg, men det burde vel de fleste webhotell ha.

Skrevet
Koble til serveren med ssh, for så å starte server.py?

Problemet kommer når man skal få Apache (eller hva nå enn webhotellet bruker) til å snakke med server.py -- og da snakker vi om FastCGI eller WSGI :)

 

Å starte server.py på en vilkårlig port vil neppe ha noen særlig effekt.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...