2009-05-28 5 views
0

Hey là, c'est une question de débutant Zend. Sous un emplacement de site: "mydomain.org/subA/subB", si nous allons à cet endroit sans nous connecter (ou avoir une session), i) redirige vers une page de connexion. Sinon, il ii) redirige vers un formulaire d'inscription à la course. Maintenant, je pensais que les règles de réécriture Apache fait, mais il n'y a pas config qui indique que dans notre fichier .htaccess projet:Mécanismes PHP/Zend pour la réécriture

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ /index.php [NC,L] 

Les mécanismes que je sais que peut faire ce genre de réécriture sont i) Apache mod_rewrite ou ii) réécriture via les composants du contrôleur ou du routeur de Zend. Y a-t-il autre chose que je pourrais manquer? Comme je l'ai dit, je suis un novice de PHP/Zend, donc ce serait bien d'avoir quelque chose qui peut tracer cette requête pour voir quels systèmes il traverse.

Merci

Répondre

-1

J'utiliser les bibliothèques de Zend routage intégré:

http://framework.zend.com/manual/en/zend.controller.router.html

routeur de Zend vous permet de créer des itinéraires réécrite depuis votre application, sans écrire des règles mod_rewrite personnalisées. Les règles de réécriture que vous avez collées depuis votre fichier .htaccess sont ce dont Zend a besoin pour faire son travail. EDIT: J'ai lu votre question un peu plus près. Je pense que vous comprenez que Zend a des routes. Si vous recherchez la raison pour laquelle la redirection fonctionne, essayez de vérifier la page à authentifier auprès du contrôleur. Si preDispatch() est défini dans le contrôleur, il se peut qu'il vérifie l'authentification de la session et la redirige vers un autre contrôleur s'il est manquant.

+0

Je suis confus. Est-ce que votre question portait sur une application existante ou sur celle que vous écriviez? Demandez-vous comment les routes Zend fonctionnent ou comment utiliser l'authentification dans le framework? –

+0

Hé là, je l'ai fonctionné. Je faisais référence à une application (privée) existante sur laquelle je travaille, et j'avais consulté la documentation de Zend sur le contrôleur et le routeur. Il s'est avéré que je devais modifier un objet Zend_Acl à l'aide des méthodes allow() et deny(). C'était très délicat car je ne m'attendais pas à une redirection comme une sorte de décision post-processus. Fait sens du rétrospectif cependant. Espérons que c'était clair. Merci pour tous les commentaires. –

Questions connexes