IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Django Python Discussion :

Déployer un site Django


Sujet :

Django Python

  1. #1
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut Déployer un site Django
    Bonjour à tous,

    Je réalise actuellement un certain nombre d'outils sous Django destinés à faciliter la vie de mes collègues de taf. Je souhaite mettre "en ligne" ces outils et plutôt que d'utiliser un serveur distant x je souhaite utiliser un PC interne. Pour cela je dois donc installer apache et mod_python.

    J'ai suivi le DjangoBook et à priori jusqu'à tout va bien. Cependant maintenant que je les ai installés et que j'ai configurer apache2.conf et redémarrer apache je coince un peu.

    Où dois-je exactement mettre mes fichiers, dois-je ré-installer Django et Python à un endroit particulier ou l'installation standard suffit, ...

    Soit j'ai lu le DjanoBook de travers, soit j'ai rien pigé car je ne trouve pas les réponses à ces questions qui me semblent assez simplistes...

    D'avance merci

    PS: Je suis sous Ubuntu
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  2. #2
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    Si c'est pour un usage restreint et local (tes collègues de travail a priori), j'aurais tendance à te conseiller de rester avec le serveur de développement inclus dans django.

    Il est loin d'être optimal, mais pour un nombre de connexion réduit, ca devrais passer.

    Si tu tiens à penser par apache, je pourrais pas trop t'aider pour mod_python, vu que j'utilise apache avec mod_wsgi.

  3. #3
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    J'entends beaucoup parlé de mod_wsgi. Il y a t-il beaucoup de différence avec mod_python?

    Si tu l'utilises je suppose qu'il y a une raison particulière. Peux-tu me la donner?
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  4. #4
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    A l'époque j'avais choisi mod_wsgi parce que celui là me permettais d'héberger des sites entièrement indépendant, un peu comme un hébergement mutualisé.

    Si j'ai tout bien compris, ce qui n'est pas toujours sur ^^ :

    Apache lance tout ces process avec un même user, ce qui fait que 2 sites servi par le même serveur apache ne permets pas d'interdire l'accès au dossier physique de l'autre site, vu que le propriétaire des dossiers est du coup le même user. (Pas sur que ce soit clair)

    J'avais cherché avec mod_python de lancer les process fils d'apache sous des users différent, ce que je n'avais pas réussi, peut être n'ai je pas compris comment faire, alors qu'avec mod_wsgi, j'ai réussi à le faire.

  5. #5
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    Citation Envoyé par DelphiManiac Voir le message
    A l'époque j'avais choisi mod_wsgi parce que celui là me permettais d'héberger des sites entièrement indépendant, un peu comme un hébergement mutualisé.

    Si j'ai tout bien compris, ce qui n'est pas toujours sur ^^ :

    Apache lance tout ces process avec un même user, ce qui fait que 2 sites servi par le même serveur apache ne permets pas d'interdire l'accès au dossier physique de l'autre site, vu que le propriétaire des dossiers est du coup le même user. (Pas sur que ce soit clair)
    hihihihi Heuuu non là j'ai rien pigé. Cela vient soit du petit ricard que je viens de boire soit du fait que je maitrise vraiment pas trop Apache...

    Quoiqu'il en soit je verrai déjà avec le serveur de dév dans un premier temps pour valider les outils, ensuite...

    J'ai une autre petite question du point de vue sécurité...
    Sur d'autres discussion je me demandais si (re)prendre pour des applc web valait le coup (tu as d'ailleurs participé à l'une d'elles). L'un des points qui m'a convaincu est le fait que j'ai beaucoup mieux compris l'utilisation d'url.py et de views.py. La conséquence de ceci est qu'il me sera extrêmement facile et rapide de reprendre les programmes déjà fait si j'utilise la bdd que j'ai réalisé. Cela revient à ne pas utiliser les modèles d'applications de Django.

    J'aimerai savoir ce que tu en penses et surtout selon toi où dois-je mettre mes codes python et bdd pour qu'ils soient au maximum sécurisés (par exemple comment faire pour ne pas risquer que des mdp de login soient accessibles à tous).

    Je suis pas très doués niveau sécurité de programme et j'aimerai bien avoir quelques conseils.

    D'avance merci
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  6. #6
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    J'essaye de mieux réexpliquer ce que j'ai compris concernant apache et les users avec mod_python et mod_wsgi.

    Apache tourne généralement sous linux sur les serveurs de production.

    Sous linux tu as des utilisateurs qui ont des droits différents sur les répertoires.

    De base si tu as 2 sites, tu as une arborescence qui ressemble à ca :

    /home
    -> site1
    -> site2

    De base apache lance son process avec un seul nom d'utilisateur, donc tu as un utilisateur qui s'appelle par exemple toto et apache se lance donc en utilisant les droits de toto :

    /home
    -> site1 -> toto à tous les droits
    -> site2 -> toto à tous les droits

    Tu es obligé de donner les droits à toto sur les 2 répertoires, sinon apache ne pourra pas accéder à un des répertoires vu qu'il utilise les droits de toto.

    Donc le dev qui code en python sur le dossier site1 peut du coup accéder au données de site2 qui ne sont pas les siennes.

    mod_python d'après ce qu j'ai compris ne peut pas changer cela.

    mod_wsgi peut quand à lui, lancer les process python de chaque site avec un nom d'utilisateur différent.

    /home
    -> site1 -> toto1 à tous les droits
    -> site2 -> toto2 à tous les droits

    Dans le fichier httpd.conf d'apache, tu précise par mod_wsgi que le site1 utilise les droits de toto1 avec comme url www.site1.com et idem pour site2 mais avec l'utilisateur toto2. Du coup toto1 ne peut pas accéder au données de site2 et inversement.

    C'est ce que j'ai compris après différents essais que j'avais fais il y a un moment de cela.

    Si un spécialiste d'apache passe par là, qu'il n'hésite pas à corriger si j'ai des bêtises :p



    Concernant ton autre question, tu peux, il me semble de mémoire, utiliser les modèles objets d'accès au données de django sans pour autant que la base de données ai été créée avec django. Il me semble que la doc décris cette procédure, même si je ne l'ai jamais utilisé.

    Par contre je ne comprend pas cette question :
    où dois-je mettre mes codes python et bdd pour qu'ils soient au maximum sécurisés (par exemple comment faire pour ne pas risquer que des mdp de login soient accessibles à tous)
    Tu parles de quel mot de passe ? ceux de l'accès à la base de données ?

    Si oui, il sont stockés dans le fichier settings.py qui est un fichier qui ne peut être affiché par un navigateur web.

    Tout script stocké coté serveur (python/php, perl, etc...) ne peut être affiché coté client, à partir du moment ou apache est bien configuré le script sera exécuté et c'est le résultat de son exécution qui sera envoyé au navigateur.

    Le principal risque est que ton site permette de downloader des fichiers et que dans le script de download il y ai une faille qui permette de downloader n'importe quel fichier du serveur.

    Si tu as d'autre question, n'hésites pas, mais essaye, stp, de partir d'exemple réel de code. C'est toujours plus facile que d'essayer de parler de choses relativement abstraite



    Tu es sous quel environnement sur ton serveur de production ? windows ou linux ? (quelle version de l'os aussi stp ? )

  7. #7
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    Ok j'ai mieux compris ce que tu voulais dire concernant mod_python et mod_wsgi.
    Citation Envoyé par DelphiManiac Voir le message
    Par contre je ne comprend pas cette question : Tu parles de quel mot de passe ? ceux de l'accès à la base de données ?
    Non excuse pour ce manque de précision. Je voulais parler de mot passe d'identification pour l'accès au site web. Je voulais savoir s'il "prudent" de réutiliser ce que j'ai déjà fait ou vaut-il mieux utiliser le module Django par exemple.

    Citation Envoyé par DelphiManiac Voir le message
    Tout script stocké coté serveur (python/php, perl, etc...) ne peut être affiché coté client, à partir du moment ou apache est bien configuré le script sera exécuté et c'est le résultat de son exécution qui sera envoyé au navigateur.

    Le principal risque est que ton site permette de downloader des fichiers et que dans le script de download il y ai une faille qui permette de downloader n'importe quel fichier du serveur.
    Ok là tu me rassure bien. Nikel.

    Citation Envoyé par DelphiManiac Voir le message
    Si tu as d'autre question, n'hésites pas, mais essaye, stp, de partir d'exemple réel de code. C'est toujours plus facile que d'essayer de parler de choses relativement abstraite
    Ok.

    Citation Envoyé par DelphiManiac Voir le message
    Tu es sous quel environnement sur ton serveur de production ? windows ou linux ? (quelle version de l'os aussi stp ? )
    Ubuntu 9.04... (d'ailleurs quelle merveille)... Idem pour le serveur de dév
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  8. #8
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    Citation Envoyé par Jiyuu Voir le message
    Non excuse pour ce manque de précision. Je voulais parler de mot passe d'identification pour l'accès au site web. Je voulais savoir s'il "prudent" de réutiliser ce que j'ai déjà fait ou vaut-il mieux utiliser le module Django par exemple.
    Ne sachant ce que tu as fais, je ne saurais te dire ^^

    Personnellement, pour la partie back office (administration), j'utilise le module standard de django. Pour la partie front office, je n'en ai pas eu besoin jusqu'a présent, mais j'aurais tendance aussi à utiliser ce que propose django.

  9. #9
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    En fait sur mon programme actuel j'ai juste créé un dico du type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dico_log = {user1:mdp1, user2:mdp2...}
    C'est plus un système d'identification qu'autre chose.
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  10. #10
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    Quand je dis que je ne sais pas ce que tu as fais, c'est globalement, pas juste la manière de stocker.

    En gros y a t'il un risque de faille de sécurité :p

    Je te conseillerais sans trop savoir ou tu en es, de regarder tout de même du coté des mécanismes de django.

    A priori ca devrais être bien testé et donc produire une meilleure sécurité.

  11. #11
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    Hello,

    Je repost ici pour faire suite à ton conseil sur mon autre sujet concernant le déploiement de mon site.

    Ca fait 4 bonnes heures que j'essaye de comprendre la marche à suivre pour déployer mon site grâce à APACHE et fast_wsgi et là je baisse carrément les bras.

    Je comprend rien du tout à la doc (mon niveau d'anglais doit y être pour beaucoup).
    Actuellement j'ai pu installer APACHE et mettre à jour le fichier httpd.conf en ajoutant le module mod_wsgi à la fin de la lise des modules.
    Maintenant je nage en plein cauchemar et je plane complet.

    Aurai-tu quelques conseils en français, pour me guider?

    D'avance merci

    [EDIT]
    Bon disons que j'ai un peu avancé... Grâce à un tuto sur APACHE que j'ai trouvé sur le net, je sais maintenant avoir une page comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
    <html><head>
    <title>Apache Status</title>
    </head><body>
    <h1>Apache Server Status for localhost</h1>
     
    <dl><dt>Server Version: Apache/2.2.13 (Win32) mod_wsgi/3.0c4 Python/2.6.2</dt>
    <dt>Server Built: Aug  6 2009 15:50:50
    </dt></dl><hr /><dl>
    <dt>Current Time: Thursday, 24-Sep-2009 16:10:48 Paris, Madrid (heure d'été)</dt>
    <dt>Restart Time: Thursday, 24-Sep-2009 16:06:07 Paris, Madrid (heure d'été)</dt>
    <dt>Parent Server Generation: 0</dt>
     
    <dt>Server uptime:  4 minutes 41 seconds</dt>
    <dt>1 requests currently being processed, 63 idle workers</dt>
    </dl><pre>_____________________________________________________________W__
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    ................................................................
    </pre>
    <p>Scoreboard Key:<br />
    "<b><code>_</code></b>" Waiting for Connection, 
    "<b><code>S</code></b>" Starting up, 
    "<b><code>R</code></b>" Reading Request,<br />
    "<b><code>W</code></b>" Sending Reply, 
    "<b><code>K</code></b>" Keepalive (read), 
    "<b><code>D</code></b>" DNS Lookup,<br />
     
    "<b><code>C</code></b>" Closing connection, 
    "<b><code>L</code></b>" Logging, 
    "<b><code>G</code></b>" Gracefully finishing,<br /> 
    "<b><code>I</code></b>" Idle cleanup of worker, 
    "<b><code>.</code></b>" Open slot with no current process</p>
    <p />
    PID Key: <br />
     
    <pre>
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: _ ,   3600 in state: _ 
       3600 in state: _ ,   3600 in state: W ,   3600 in state: _ 
       3600 in state: _ ,
    </pre>
    <hr />To obtain a full report with current status information you need to use the <code>ExtendedStatus On</code> directive.
    </body></html>
    Je pense qu'il y a du mieux. Il me reste à piger où je mets le code python, et comment faire pour que le couple apache-mod_wsgi l'exécute.

    J'ai peur que cela ne soit pas si simple pour moi car je en trouve réellement aucune doc.
    Mais peut-être aussi que je cherche midi à quatorze heure....
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  12. #12
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    Petit tuto rapide.

    Pour info, je suis sous windows. J'ai installé apache 2.2 et mod_wsgi 2.3 pour apache 2.2 et python 2.5. A adapter en fonction de ta version de python et d'apache.

    Bien sûr python et django sont installé.

    1) Installer apache
    2) Télécharger mod_wsgi à partir de http://code.google.com/p/modwsgi/. Voir s'il faut le compiler en fonction de ta version de linux.
    3) Ouvrir le fichier httpd.conf et charger le module mod_wsgi : LoadModule wsgi_module modules/mod_wsgi.so
    4) Lancer/relancer apache et vérifier qu'il répond à l'adresse http://localhost/, il doit renvoyer une page : It's works.
    5) A la fin du httpd.conf, ajouter un virtualhost (changer les chemins en fonction de ton environnement), les section alias sont a adapter à ton projet et correspondent aux lignes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (r'^video_media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': BASE_DIR + '/videos/'}),
    du fichier urls.py. Les lignes sont à supprimer du fichier urls.py ou à mettre en condition pour qu'elles ne soient executés qui si on lance dajngo avec runserver.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <VirtualHost localhost:80>
            ServerAdmin test@test.com
            DocumentRoot e:/dev/django/test2
     
            ServerName localhost
     
            WSGIScriptAlias / e:/dev/django/test2/mytest/django.wsgi
            <Directory e:/dev/django/test2/mytest/>
                Order deny,allow
                Allow from all
            </Directory>
     
            Alias /video_media e:/dev/django/test2/mytest/video_media
     
            <Directory e:/dev/django/test2/mytest/video_media>
                Order deny,allow
                Allow from all
            </Directory>
    </VirtualHost>
    6) Dans le dossier de ton application django, (e:/dev/django/test2/ chez moi), copier le fichier django.swgi (pièces jointes).
    7) Éditez le fichier et changer les chemins en fonction de ton environnement.
    8) Relancer apache et naviguez sur http://localhost/, tu devrais avoir le projet django de base qui s'affiche.

    La doc de mod_wsgi est sur le site de mod_wsgi, la partie qui parle de l'intégration de django est là : http://code.google.com/p/modwsgi/wik...tionWithDjango

    P.S.: Bien faire attention à changer tout les chemins. Ceci n'est pas exhaustif et ne prétend pas être une configuration à mettre à disposition sur le net. Je n'ai pas intégré les notions de sécurité nécessaire à une mise en ligne.
    Fichiers attachés Fichiers attachés

  13. #13
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    Impec, tu es mon sauveur...
    J'ai plus qu'à tester tout ça à fond, mais j'accède déjà à la première page, donc le reste devrait être tranquille.

    Effectivement en français c'est beaucoup plus facile et compréhensible (va sérieusement falloir que je me (re)mettes à l'anglais.

    Ton exemple m'a été très utile, d'autant que depuis ce matin j'ai retourner à une instal XP principalement pour des raisons pro, donc l'adaptation à été très rapide.
    Je pense que sous linux ça n'aurait pas été beaucoup plus compliqué... (je verrai ça sur un autre PC)

    Vraiment un grand merci

    Une petite question se pose encore à moi...
    Comment, une fois tout ceci fait et les problèmes de sécurité réglés, fait-on pour permettre l'accès à des tierces personnes à notre site. Je suppose qu'il y a une histoire d'IP du PC, etc...

    Aurais-tu une explication succinte ou un bon tuto.
    En attendant je cherche une explication de mon coté

    Encore merci
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  14. #14
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    Le plus simple pour donner l'accès à ton site au public, est de l'héberger chez un hébergeur pro. Pour ma part, j'utilise des serveurs dédiées d'entrée de gamme.

    Ils ont l'avantage d'avoir une adresse ip fixe, et surtout d'avoir une bande passante que je n'aurais jamais avec ma connexion adsl.

    A partir du moment ou tu as un serveur avec une adresse ip fixe, tu achètes un nom de domaine et configure le dns pour qu'il pointe vers ton adresse ip.

    Sans adresse ip fixe et donc sur ta connexion perso, tu peux utiliser des services gratuits genre dyndns ou no-ip, mais c'est très vite limité vu que la plupart des connexions adsl ne fournissent qu'un débit limité en up (512 kbits) en général, ce qui correspond à seulement 64ko (environ).

    Sinon, en dehors des serveurs dédiés ou de ta connexion, il n'existe, à ma connaissance, qu'un seul hébergeur français qui fourni du mutualisé python (avec django) en natif -> http://www.alwaysdata.com/ Il y a même un pack gratuit pour tester leurs services.


    Pour l'anglais, oui pour un développeur, il est nécessaire d'au moins le lire sans aucune difficulté. Le parler ou l'écrire est plus accessoire, même si c'est un plus.

  15. #15
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    Merci pour toutes ces infos.

    Je connais déjà Alwaysdata (j'utilise déjà leurs services). Je m'intéressait surtout à une solution "maison", juste par curiosité.

    Encore merci pour tout
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  16. #16
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    Si c'est par curiosité, tu peux donc utiliser un service d'ip dynanique (dyndns ou no-ip) et héberger cela sous windows ou linux, à ta convenance.

    Il suffit pour cela configurer d'une part ton routeur pour qu'il redirige toutes les entrées sur le port tcp/80 vers l'adresse ip de ton pc, créer un compte sur le service d'ip d'ynanique, télécharger un logiciel ou paramétrer ton routeur pour qu'il indique au service d'ip ta nouvelle ip chaque fois qu'elle change et paramétrer apache pour qu'il réponde à toutes les requêtes quelques soit l'adresse ip (vu qu'elle est dynamique).

    En gros et de mémoire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <VirtualHost *:80>
    ... 
            ServerName <le_nom_que_tu_as_choisi_après_du_service_ip>.dyndns.org # ou .no-ip.com ou le domaine que tu as choisi auprès du service

  17. #17
    Membre confirmé
    Profil pro
    Développeur Back-End
    Inscrit en
    Septembre 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Septembre 2007
    Messages : 81
    Par défaut
    J'ai suivi la demarche decrite mais là j'ai:
    You don't have permission to access / on this server.
    je ne sais plus quoi faire.
    suis sur xp.
    Merci

  18. #18
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    You don't have permission est lié à la directive <Directory>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    WSGIScriptAlias / e:/dev/django/test2/mytest/django.wsgi
    <Directory e:/dev/django/test2/mytest/>
        Order deny,allow
        Allow from all
    </Directory>
    Vérifie qu'elle est toujours là et que tu n'as pas changé de chemin entre temps. Il faut que tu accordes les droits au dossier spécifié dans WSGIScriptAlias dans la directive <Directory>

  19. #19
    Membre confirmé
    Profil pro
    Développeur Back-End
    Inscrit en
    Septembre 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Septembre 2007
    Messages : 81
    Par défaut
    voici après adaptation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <Directory c:/Myweb/career/>
                Order deny,allow
                Allow from all
     </Directory>
    l'erreur dans mon fichier log j'ai:
    client denied by server configuration: C:/Myweb/django.wsgi

    Merci

  20. #20
    Membre Expert
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Par défaut
    Il faut que tu autorises pour le dossier C:/Myweb/.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <Directory c:/Myweb/>
        Order deny,allow
        Allow from all
    </Directory>

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Déployer un site web en framework 1.1
    Par le_bono dans le forum ASP.NET
    Réponses: 3
    Dernier message: 12/02/2008, 16h27
  2. Réponses: 2
    Dernier message: 31/10/2007, 17h53
  3. Réponses: 1
    Dernier message: 26/04/2007, 13h46
  4. Déployer un site local
    Par DevCR dans le forum Apache
    Réponses: 4
    Dernier message: 22/02/2007, 14h46
  5. [M2]Pb pour déployer un site
    Par elitost dans le forum Maven
    Réponses: 11
    Dernier message: 13/07/2006, 17h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo