URL rewriting sans htaccess

Petit nouveau ! | 6 Messages

15 sept. 2010, 18:39

Bonjour

J'ai une page d'identification avec ID et pwd : http://www.exemple.com/dossier/

Après que l'utiliser introduise son id et son mot de passe, il se redirige vers
http://www.exemple.com/dossier/page.php

Ce que je veux faire c'est de cacher ce nom "page.php" et que l'adresse affichée après identification soit la même, soit :

http://www.exemple.com/dossier/ au lieu de http://www.exemple.com/dossier/page.php

Je cherche une solution PHP sans htaccess

merci

ViPHP
ViPHP | 5462 Messages

15 sept. 2010, 18:51

pourquoi sans htaccess ?
sinon faudrais que ca sois ton index qui redirige tout ca et de caché en envoyant la page que tu souhaites par POST

Petit nouveau ! | 6 Messages

15 sept. 2010, 19:01

Les htaccess ne sont pas supportés par le serveur web

Sinon, pour ta solution, un peu d'explication pour un débutant est la bienvenue :-)

merci

ViPHP
ViPHP | 5462 Messages

15 sept. 2010, 19:07

Les htaccess ne sont pas supportés par le serveur web
ah bon c'est quel serveur ?

Petit nouveau ! | 6 Messages

15 sept. 2010, 19:19

Peu importe quel serveur, je suis à la quête d'une solution, est ce que tu peux m'aider ?
merci

ViPHP
ViPHP | 5462 Messages

15 sept. 2010, 19:20

Peu importe quel serveur, je suis à la quête d'une solution, est ce que tu peux m'aider ?
merci
non pas "Peu importe quel serveur" quasiment tout les serveurs peuvent faire du rewriting sans bidouille

Petit nouveau ! | 6 Messages

15 sept. 2010, 19:33

Si tu ne peux pas ou tu ne veux pas m'aider, t'es pas obligé de poster, mon serveur web ne supporte pas les htaccess ! et je cherche une solution PHP pure !

merci quand même

ViPHP
ViPHP | 5462 Messages

15 sept. 2010, 19:36

Si tu ne peux pas ou tu ne veux pas m'aider, t'es pas obligé de poster, mon serveur web ne supporte pas les htaccess ! et je cherche une solution PHP pure !

merci quand même
le htaccess et le rewriting c'est 2 choses différentes...

Petit nouveau ! | 6 Messages

15 sept. 2010, 19:38

et comment faire alors ?

ViPHP
ViPHP | 5462 Messages

15 sept. 2010, 19:41

et comment faire alors ?
c'est pour ca que je te demande c'est quel serveur

Petit nouveau ! | 6 Messages

15 sept. 2010, 20:01

Je n'ai aucune idée !
C'est un boulot que je dois faire !
Alors t'as pas une solution pour moi, merci

ViPHP
xTG
ViPHP | 7331 Messages

15 sept. 2010, 20:42

Tu peux faire de l'url rewriting via le http.conf
Mais vu le peu d'informations que tu sembles posséder on pourrait donc se demander si tu y as accès.

Mammouth du PHP | 19672 Messages

15 sept. 2010, 22:01

Les htaccess ne sont pas supportés par le serveur web
Ça n'a pas de sens de dire ça : le serveur les supporte fort bien. Ce qui est possible en revanche, c'est que le httpd.conf bloque l'usage des fichiers .htaccess. Si tu n'as pas la main sur ce dernier, alors ce sera mission impossible puisque l'url est traduite par le serveur qui fait alors appel à l'interpréteur PHP en pointant sur tel ou tel fichier de code pour construire la page demandée. Si le serveur ne permet pas l'urlRewriting, tu ne pourras pas l'implémenter, c'est aussi simple que ça.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 314 Messages

16 sept. 2010, 07:57

Aloa,

Comment sont construites les url tel que :

http://www.site.com/index.php/test/blabla

ça utilise le rewriting du serveur web ? Si oui, je vois pas pourquoi les gens laissent le index.php...
Cordialement,
Julien - http://laravel.fr/

Mammouth du PHP | 19672 Messages

16 sept. 2010, 09:41

Ce genre d'url indique le plus souvent une architecture en modèle MVC avec donc des indications spécifiques : mais ce type d'architecture signifie que toutes les requêtes HTTP vers le site passent par un unique fichier index qui est un contrôleur frontal et qui va ensuite déterminer selon le reste de l'url quel contrôleur de page doit être mis en oeuvre pour quelle action avec quels paramètres.

Reprenons ton exemple « http://www.site.com/index.php/test/blabla » : dans une architecture MVC, ça voudrait dire quel le contrôleur frontal va appeler un testCtrl (le contrôleur de la page « test » et l'action « blabla » qui est une méthode de la classe testCtrl, méthode qui va construire la page spécifique.
Pour faire ça, on utilise le plus souvent un ficher .htaccess à la racine du site qui va rediriger tous les appels vers la page index.php situé à la racine du site. Ce contrôleur frontal va faire appel le plus souvent à une classe de routage qui va décortiquer les éléments de l'url pour déterminer quelle page est demandée en précisant l contrôleur, l'action et les paramètres s'il y en a.

Dans ton cas, il y a probablement le problème suivant : la configuration du serveur interdit la surcharge. Si tu regarde un fichier httpd.conf, tu pourras y trouver ce genre de choses :

Code : Tout sélectionner

<Directory "/var/www"> # # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride All </Directory>
Cette directive AllowOverride indique si on eut justement utiliser un fichier .htaccess : ici la valeur est « All » et donc l'utilisation d'une surcharge est permise. Si la valeur avait été « None » alors l'utilisation d'un .htaccess serait interdite.

Je te suggère une lecture de la documentation Apache sur le sujet.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: