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

Zend Framework PHP Discussion :

Rewriting et prise en compte des <Location>


Sujet :

Zend Framework PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut Rewriting et prise en compte des <Location>
    Bonjour,
    J'ai un problème technique épineux pour lequel je ne trouve pas de solution.
    Je réalise (dans une application zend_framework) un url_rewriting où tous les fichiers inexistants sont renvoyés vers index.php. La config est dans le virtualhost, dans des balises <Location> (voir plus bas).
    Mais je veux aussi affecter des php_value à certaines url.
    Or, ces configs ne sont pas prises en compte, car il semble que l'url testée dans <Location> soit celle réécrite (/index.php) et non pas la requête initiale (/pr/media/)
    Voici mon virtualhost :
    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
    	<Location /pr/media/>
    		php_value post_max_size "300M"
    		php_value upload_max_filesize "210M"
    		php_value max_input_time 1800
    		php_value max_execution_time 1800
    		php_value memory_limit -1
    	</Location>
     
    	<Location />
            RewriteEngine on
            RewriteCond %{REQUEST_FILENAME} -s [OR]
            RewriteCond %{REQUEST_FILENAME} -l [OR]
            RewriteCond %{REQUEST_FILENAME} -d
            RewriteRule ^.*$ - [NC,L]
            RewriteRule ^.*$ index.php [NC,L]
    	</Location>
    Quand je crée un fichier /pr/media/test.php, la config est bonne (le fichier existant, le rewriting n'a pas lieu).
    Sinon, sur une requête rewritée (par exemple /pr/media/add qui est renvoyée vers /index.php), la config est fausse.
    Enfin, pour une config <Location /index.php>, la requête /index.php a une bonne config.

    Une idée ?

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    J'ai trouvé

    La solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <If "%{THE_REQUEST} =~ m#^POST /pr/media/(add|edit)#">
            php_value post_max_size "300M"
            php_value upload_max_filesize "210M"
            php_value max_input_time 1800
            php_value max_execution_time 1800
            php_value memory_limit -1
    </If>
    THE_REQUEST garde la requête initiale tout le temps (mais n'est pas dispo par $_SERVER).
    Après, c'est une bête regex car THE_REQUEST est du type 'POST /pr/media/add HTTP/1.1'.
    m# ... # : change le délimiteur de / vers # (pour utiliser / dans la regex)
    ^ : début de chaîne
    (add|edit) : l'un ou l'autre

    En toutes lettres : si /pr/media/add ou /pr/media/edit est appelé en POST, fait ce qui suit.
    Je rappelle que les instructions <If> ne sont disponible que dans Apache 2.4+

    Si ça peut servir à quelqu'un !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Prise en compte des virgules aléatoire selon le type de curseur ?
    Par mosquitout dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 25/07/2006, 19h48
  2. [Date dans Mysql] Prise en compte des espaces
    Par tchoukapi dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 02/01/2006, 03h41
  3. [MS-DOS] Prise en compte des accents
    Par Furius dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 15/11/2005, 13h30
  4. Prise en compte des réponses des posteurs
    Par hunter dans le forum Evolutions du club
    Réponses: 152
    Dernier message: 05/11/2005, 22h40
  5. Prise en compte des contraintes
    Par potanie dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 05/11/2004, 10h00

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