Startschwierigkeiten mit Django

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Freitag 29. Februar 2008, 20:38

Hi, ich will/muss eine Webseite programmieren. Da ich Python Fan bin würde ich das gern mit Python und Django realisieren. Aber ich komme nicht so richtig in die Gänge.

Um es mal kurz zu umreißen was als Endergebnis rauskommen soll: ich möchte einen neuen Webshop für meine Firma programmieren mit Warengrupen, Warenkorb, unterschiedliche Artikelübersichten usw. Das ganze soll in ein klassisches dreispaltiges Layout mit Footer und Header. Das Layout (HTML/CSS) selbst möchte ich mit Yaml erstellen (bei Django gibt es eine pyyaml.py, hat das was damit zu tun?)

Ich will jetzt nicht alles auf einmal machen und ich will auch nicht nächste Woche fertig werden, aber ich brauche einen Anfang um mich in das Thema reinzufinden. Das Django Book hab ich schon zum Teil gelesen, aber damit tu ich mich schwer, das openbook von Galileo kratzt nur an der Oberfläche.

Es geht eigentlich schon los mit der Installation beim Provider bzw auf meinem lokalen Webserver. Aus PyLucid bin ich noch nicht schlau geworden. Bisher konnte ich nur mit dem eingebauten Testserver arbeiten. Ich habe mir bei meinem Provider gerade eine Subdomain zum Testen angelegt und kopiere gerade das /django Verzeichnis dort hin.

Jetzt die ersten meiner vielen Fragen:
1. wie richtige ich jetzt Django bei meinem Provider ein so das es läuft?
2. wie bekomme ich das, was ich auf dem Testserver entwickelt habe, beim Provider zum laufen?
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Freitag 29. Februar 2008, 23:13

Ok, wie ich beim Provider die Datenbank anlegen kann weiß ich jetzt, aber ich konnte leider noch nicht rausfinden wie ich django beim Provider einrichte. Ich weiß das ich die cgi.py benötige und eine .htaccess mit ein paar Einträgen anlegen muss. Ich hab aber noch nicht verstanden wie das ganze eingerichtet wird.

Außerdem würde ich gerne mal ein super Simpel Projekt wie zb das aus dem Galileo Openbook auf den Providerserver portieren. Das würde mir schon weiterhelfen
Keanuf
User
Beiträge: 39
Registriert: Freitag 3. Oktober 2003, 00:03
Kontaktdaten:

Freitag 29. Februar 2008, 23:17

Hallo Burli, also ich hab keine Ahnung was denn dein Provider anbietet, aber das django Framework muss da schon installiert sein und das DB Modul in der richtigen Version für deine DB.

Dann müsstest du auch in die Apache configs eingreifen, das lässt nicht jeder so zu.

Ich kenn leider auch keine Anbieter, aber die soll es geben.
Eigentlich wollte ich wegen dem WEbshop nur einen Link hier einfügen

http://www.satchmoproject.com/
Eventuell kannst du darauf aufbauen.

Gruss
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Freitag 29. Februar 2008, 23:19

Hi Keanuf,
nein, man kann Django auch als CGI laufen lassen und alles was man Apache mitteilen muss kann man über .htaccess machen. Ich werd nur nicht schlau daraus wie das geht und wie ich nachher ein lauffähiges Projekt auf den Server portiere
Keanuf
User
Beiträge: 39
Registriert: Freitag 3. Oktober 2003, 00:03
Kontaktdaten:

Samstag 1. März 2008, 08:15

Hallo Burli,

Also das ist was ich so gefunden habe,
eventuell hilft dir das.

http://code.djangoproject.com/wiki/ServerArrangements

:wink:
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Samstag 1. März 2008, 11:21

Außerdem kann `wsgiref` auch CGI, also könnte man es auch auf diesem Weg versuchen. Ich würde mir aber an dieser Stelle einen vernünftigen Hoster suchen.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Samstag 1. März 2008, 11:54

Nachtrag: Das pyyaml.py von Django bezieht sich auf Yet Another Markup Language (als Alternative zu XML), nicht Yet Another Multicolumn Layout. Der Begriff ist unglücklicherweise überladen.

Stefan
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Samstag 1. März 2008, 12:10

Eigentlich möchte ich den Hoster nicht schon wieder wechseln weil mein derzeitiger Hoster eigentlich schon ganz ok ist. Unbegrenzt Traffic für 8€, der Spam Filter funktioniert, der Support sehr gut... und ich brauche ein SSL Zertifikat

Außerdem besteht bei jedem Wechsel die Gefahr das beim kleinsten Fehler die Domain gegrabbt wird. Hat ein Bekannter mal erleben dürfen.

Ganz ehrlich, da verzichte ich lieber auf Django oder mach es doch in PHP.

Python läuft ja, und ich würde es gerne über die CGI Schiene probieren, aber ich kriege die Einrichtung einfach nicht auf die Reihe weil ich nicht durchblicke wie Jens das bei PyLucid gemacht hat und aus dem Blog von Jason McBrayer auch nicht richtig schlau werde. Bevor ich Django komplett in die Tonne werfe würde ich zumindest gern mal sehen wie die Performance aussieht. Wenn die bei einfachen Seiten schon mieserabel ist brauch ich nicht weitermachen und ich suche eine Alternative
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Samstag 1. März 2008, 12:30

burli hat geschrieben:Außerdem besteht bei jedem Wechsel die Gefahr das beim kleinsten Fehler die Domain gegrabbt wird. Hat ein Bekannter mal erleben dürfen.
Die Domain brauchst du ja nicht umziehen. Ich habe alle Domains bei dedizierten Domain-Hostern.

Normalwerweise könnte man an wsgirefs CGIHandler eine WSGI-Applikation anschließen. Theoretisch sollte da mit ``django.core.handlers.wsgi.WSGIHandler`` etwas zu machen sein.

Ohne das jetzt getestet zu haben:

Code: Alles auswählen

import os, sys
sys.path.append('/usr/local/django')
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'

from django.core.handlers.wsgi import WSGIHandler
from wsgiref.handlers import CGIHandler

app = WSGIHandler()
CGIHandler().run(app)
My god, it's full of CARs! | Leonidasvoice vs Modvoice
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Samstag 1. März 2008, 13:17

Also gut, ich denke ich werde mir einen VirtualHost oder etwas ähnliches bei einem anderen Provider mieten wo ich selbst installieren kann was ich brauche. Hab bei meinem Provider gerade angerufen ob die meine Domain dann auch weiterleiten
Keanuf
User
Beiträge: 39
Registriert: Freitag 3. Oktober 2003, 00:03
Kontaktdaten:

Samstag 1. März 2008, 13:44

Hallo burli, wegen der Domain,
also da würde ich diese,
wie schon hier geschrieben von Leonidas,
bei einem Domain Anbieter hinterlegen, hier kannst du dann die Domain
an die jeweilige IP adresse von deinem WebspaceAnbieter binden.
(Den DNS Eintrag machen)

z.B. bei http://www.regfish.de/
die domain ablegen und bei
einem Anbieter von VPS, RootServer oder Webspace.
Den Webspace nutzen.

Dann bist du flexibler, was die Auswahl deiner
webspace Anbieter betrifft. :wink:
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Samstag 1. März 2008, 15:05

burli hat geschrieben:Also gut, ich denke ich werde mir einen VirtualHost oder etwas ähnliches bei einem anderen Provider mieten wo ich selbst installieren kann was ich brauche. Hab bei meinem Provider gerade angerufen ob die meine Domain dann auch weiterleiten
Ich würde dir ja Pyhosting empfehlen, falls du nicht unbedingt alles selbst administrieren willst. Ich habe da eine Seite gehostet, die auf Werkzeug aufbaut.

Die Domain ist übrigens bei Regfish, ja.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Samstag 1. März 2008, 17:47

Nein, ich werde mir bei vollmar.net einen vserver holen. Da kann ist selbst bestimmen was Sache ist. Der administrative Aufwand wird kaum höher sein als bei meinen Rechnern hier.

Und da ich das jetzt beschlossen habe und ich hier lokal ähnliche Voraussetzungen habe werde ich hier erstmal üben. Deshalb jetzt noch eine Frage:

Wie richtet man Python auf dem Apache am besten ein? mod_python? CGI? FastCGI?
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Samstag 1. März 2008, 21:51

Heureka, nach stundenlangem Gefrickel habe ich meinen Apache endlich dazu gebracht Python auszuführen
einfacher mod_python Test

GATEWAY_INTERFACE: CGI/1.1

OK, running as CGI.

Note: Can't import mod_python module: No module named mod_python
FastCGI Environment
DOCUMENT_ROOT /home/burli/web
GATEWAY_INTERFACE CGI/1.1
HTTP_ACCEPT text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
HTTP_ACCEPT_CHARSET ISO-8859-15,utf-8;q=0.7,*;q=0.7
HTTP_ACCEPT_ENCODING gzip,deflate
HTTP_ACCEPT_LANGUAGE de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
HTTP_CONNECTION keep-alive
HTTP_HOST 192.168.1.xxx
HTTP_KEEP_ALIVE 300
HTTP_USER_AGENT Mozilla/5.0 (X11; U; Linux i686; de; rv:1.8.1.12) Gecko/20080207 Ubuntu/7.10 (gutsy) Firefox/2.0.0.12
PATH /usr/local/bin:/usr/bin:/bin
PATH_INFO
QUERY_STRING
REMOTE_ADDR 192.168.1.xxx
REMOTE_PORT 55790
REQUEST_METHOD GET
REQUEST_URI /dispatcher.fcgi
SCRIPT_FILENAME /home/burli/web/dispatcher.fcgi
SCRIPT_NAME /dispatcher.fcgi
SERVER_ADDR 192.168.1.xxx
SERVER_ADMIN webmaster@xyz.de
SERVER_NAME 192.168.1.xxx
SERVER_PORT 80
SERVER_PROTOCOL HTTP/1.1
SERVER_SIGNATURE
SERVER_SOFTWARE Apache/2.2.4 (Ubuntu) mod_fastcgi/2.4.2 PHP/5.2.3-1ubuntu6.3
Als nächstes werde ich Django installieren. Wie das dann nachher aber laufen soll weiß ich noch nicht. Vielleicht kann da ja schonmal jemand weiterhelfen?
burli
User
Beiträge: 1116
Registriert: Dienstag 9. März 2004, 18:22

Samstag 1. März 2008, 23:06

ES LÄUFT. Ich krieg nen gleich nen Anfall, aber es läuft Bild
Antworten