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

Symfony PHP Discussion :

.htaccess et mise en prod


Sujet :

Symfony PHP

  1. #1
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut .htaccess et mise en prod
    Hugh les amis,
    grand chef dukoid à besoin de vous, il ne connait pas trop .htaccess malgré ces innombrables recherches sur google.

    je veux mettre en prod un site Symfony.

    j'ai plusieurs sites que j'heberge chez mon hebergeur
    je met donc chaque site dans un dossier.


    httpdocs/monProjet/app
    httpdocs/monProjet/src
    httpdocs/monProjet/web
    httpdocs/monProjet/...

    httpdocs/monProjet/.htaccess (le truc classique que j'ai copier/coller)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)$ web/$1 [QSA,L]
    </IfModule>

    www.monUrl.fr/monProjet me donne un FILE NOT FOUND
    www.monUrl.fr/monProjet/web/app.php m'affiche bien mon site Symfony


    à votre avis ?

  2. #2
    Membre confirmé
    Avatar de vinmar
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2012
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Août 2012
    Messages : 139
    Points : 516
    Points
    516
    Par défaut
    Salut,

    Je crois que le .htaccess doit être dans le dossier web si tu veux qu'il soit pris en compte et que dans la config de ton vhost, le DocumentRoot pointe sur le dossier web.

    hugh !
    M. Lebowski : Avez-vous un emploi, monsieur ?
    Le Duc : Un emploi ?
    M. Lebowski : Ne me dites pas que vous cherchez un emploi dans cette tenue un jour de semaine ?
    Le Duc : Un jour de… Quel jour on est ?

  3. #3
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    non il y a déjà un .htaccess par defaut dans /web

  4. #4
    Membre averti
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Points : 445
    Points
    445
    Billets dans le blog
    7
    Par défaut
    Hi,
    du dédié ou bien du mutualisé ?
    Je suis Développeur Senior ouvert aux opportunités
    Mon blog

  5. #5
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    mutualisé

  6. #6
    Membre averti
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Points : 445
    Points
    445
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par dukoid Voir le message
    mutualisé
    Une idée est d'utiliser des liens symboliques (normalement ton domaine pointe vers un dossier genre "public_html" qui permet de visualiser tous les fichiers de conf !!! coucou la faille)
    1/ Ton dossier du projet sf tu le met ailleurs du dossier public_html
    2/ Crée un lien symbolique dans public_html qui pointe vers le dossier web de ton projet

    Je suis Développeur Senior ouvert aux opportunités
    Mon blog

  7. #7
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    j'ai accès par ftp. je ne peux pas créer de lien symbolique. non plus de connexion ssh.

    mon seul salue c'est par le .htaccess je pense

  8. #8
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Ugh grand sachem.

    Essaie ceci (non testé)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ /web/app.php/$1 [QSA,L]
    </IfModule>

  9. #9
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Sinon, puisqu'on est sur le forum PHP, utilise PHP pour créer le lien symbolique!
    http://php.net/manual/en/function.symlink.php

  10. #10
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    merci mais je veux pouvoir y arriver avec .htaccess si c'est possible

  11. #11
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Tu as testé la modif que j'ai proposée?

  12. #12
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ /web/app.php/$1 [QSA,L]
    </IfModule>
    www.monUrl.fr/monProjet -> j'ai toujours "file not found"

  13. #13
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Et avec ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /monProjet/web/
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ app.php/$1 [QSA,L]
    </IfModule>

  14. #14
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    toujours pas. je sens que tu es proche lol

  15. #15
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Ok, cette fois-ci j'ai testé :-)

    Mets ceci dans le .htaccess de httpdocs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ monProjet/web/app.php/$1 [QSA,L]
    </IfModule>

  16. #16
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    merci de m'aider


    donc j'ai dans httpdocs/.htaccess
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ monProjet/web/app.php/$1 [QSA,L]
    </IfModule>
    ensuite dans httpdcos/monprojet

    je veux pouvoir accéder au site par: www.monurl.fr/monProjet
    et donc pour moi ça ne fonctionne toujours pas.

    qu'est ce qui cloche à ton avis ?

  17. #17
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Rassure-moi, tu as bien un contrôleur qui répond à l'url www.monurl.fr/monProjet (i.e. www.monurl.fr/monProjet/web/app.php) ?

  18. #18
    Membre averti
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Points : 445
    Points
    445
    Billets dans le blog
    7
    Par défaut
    Question bête:

    mod_rewrite est il activé ?

    Car si non il ne rentra pas dans cette condition: <IfModule mod_rewrite.c>

    a tu déjà fais une redirection pareille sur ton serveur ou bien c'est la premiere fois ?

    comment fais tu pour les autres sites ?
    Je suis Développeur Senior ouvert aux opportunités
    Mon blog

  19. #19
    Membre averti Avatar de Pierre Maurette
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 283
    Points : 390
    Points
    390
    Par défaut
    Citation Envoyé par Tsilefy Voir le message
    Rassure-moi, tu as bien un contrôleur qui répond à l'url www.monurl.fr/monProjet (i.e. www.monurl.fr/monProjet/web/app.php) ?
    Il me semble que logiquement ce n'est pas réécrit, ça ne passe pas les RewriteCond. Placer le .htaccess à cet endroit parait logique, mais alors il serait peut-être préférable de réécrire www.monurl.fr/ZoliNom vers www.monurl.fr/monProjet/web.
    Notez que, encore une fois sauf erreur de ma part, on peut renommer après coup "monProjet", voire uploader ou rsync-er un projet fonctionnel vers ce qu'on veut.
    Mais je crains que l'approche via .htaccess reste foireuse.

  20. #20
    Membre averti Avatar de Pierre Maurette
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 283
    Points : 390
    Points
    390
    Par défaut
    Citation Envoyé par dukoid Voir le message
    mutualisé
    J'ai fait des essais sur mes serveurs de test et des mutualisés, chez 1&1. Je pense que la voie du .htaccess est une grosse source d'embêtements, genre "il y a toujours un machin qui foire". Quand votre réécriture sera opérationnelle, vous allez tomber sur le .htaccess placé par Symfony2 dans le /web, et il est joufflu. Je suis une buse en URL-ware, mais je ne serais pas étonné qu'une histoire de "referer" pose problème. Il faudra voir également que tous les liens fonctionnent, ainsi que l'adresse que verra le client dans son navigateur, et le référencement.
    Ce qui va "comme papa dans maman", c'est de faire pointer un sous-domaine vers /votrehébergement/votresite1/web. Voyez donc les possibilités de votre hébergement sur ce plan. On doit pouvoir parvenir au même résultat avec la tuyauterie CNAME, MX, etc. mais comme ce n'est applicable qu'à des sous-domaine, donc...
    Même résultat avec un virtualhost.
    Un point de détail: pointer vers la racine du site (/votrehébergement/votresite1/) en l'état peut donner une 403 (bien) ou le listing du répertoire (shit), selon la (non) configuration. C'est pas nécessairement idiot d'y placer (éventuellement après les premiers tests), à toutes fins utiles, un index.php contenant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php    
      header('Status: 301 Moved Permanently', false, 301);      
      header('Location: http://votresite1.votrehébergement.fr/');      
      exit();      
    ?>

Discussions similaires

  1. MSBUILD et gestion des mise en prod
    Par pc152 dans le forum Windows
    Réponses: 3
    Dernier message: 01/04/2008, 08h29
  2. mise en prod site XP pro vers 2003 server
    Par Hepil dans le forum IIS
    Réponses: 1
    Dernier message: 09/01/2008, 20h10

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