Url Rewriting + sous domaine

Résolu/Fermé
Flachy Joe Messages postés 2103 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 21 novembre 2023 - 5 févr. 2011 à 15:30
bg62 Messages postés 23654 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 8 novembre 2024 - 9 févr. 2011 à 20:42
Salut
Les faits :
1. machin.domaine.net est redirigé vers domaine.net/machin (fixé par mon hébergeur)
2. Un htaccess (qui fonctionne bien) redirige toutes les requêtes vers le fichier index.php à la racine du site avec la requête en paramètre.

Le problème :
Je voudrai rediriger aussi machin.domaine.net vers ce fichier index

Ce que j'ai tenté :
J'ai fait un htaccess dans le repertoire domaine.net/machin/ :
RewriteEngine On

RewriteRule ^$ /../index.php?page=machin&dummy=1 [L]

RewriteCond %{QUERY_STRING} !.*dummy=1.*
RewriteRule ^(.*)$ /../$1 [L]


Mais là un autre problème surgit : ça fonctionne très bien quand on accède à http://www12.domaine.net/?tm=1 (ça renvoi sur domaine.net/index.php?page=machin) mais pas quand on va sur http://www12.domaine.net/?tm=1 ,apparemment ça ne trouve pas le répertoire parent (??)

J'ai donc contourné avec ceci
#redirige machin.domaine.net/nimporte vers domaine.net/machin/nimporte
RewriteCond %{HTTP_HOST} ^(.*)[.]domaine[.]net$
RewriteRule ^(.*)$ http://domaine.net/%1/$1 [L]


mais je voudrai garder machin.domaine.net dans la barre d'adresse (et pour le référencement), c'est possible ?

Merci !

3 réponses

Flachy Joe Messages postés 2103 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 21 novembre 2023 260
Modifié par Flachy Joe le 8/02/2011 à 19:23
Après moult recherche, il y a au moins une solution théorique en utilisant le drapeau P (comme Proxy) à la fin de la règle de réécriture :
RewriteRule ^(.*)$ http://domaine.net/%1/$1 [L,P]
Malheureusement ça ne fonctionne que si le module mod_proxy est activé, ce qui n'est pas mon cas...

;-) Flachy Joe ;-)
Membre de l'association Olympe-Network
Ma clef PGP publique est disponible dans mon profil.
1
bg62 Messages postés 23654 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 8 novembre 2024 2 385
9 févr. 2011 à 12:07
d'où ma réponse .... quel est l'hébergeur (sans http:///////)
:)
0
Flachy Joe Messages postés 2103 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 21 novembre 2023 260
9 févr. 2011 à 20:08
Ca y est j'ai trouvé :
avec un .htaccess
RewriteEngine On

RewriteRule ^$ %{DOCUMENT_ROOT}/index.php?dummy=1

RewriteCond %{QUERY_STRING} !dummy=1
RewriteRule ^(.*)$ http://domaine.net/$1 [L]

et un fichier index.php
<?php
set_include_path(get_include_path() . PATH_SEPARATOR . '..'. PATH_SEPARATOR . '../..');
$_GET['page'] = '../machin';
include '../index.php';
?>


Merci quand même bg62....
1
bg62 Messages postés 23654 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 8 novembre 2024 2 385
9 févr. 2011 à 20:42
ok
@+
0
bg62 Messages postés 23654 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 8 novembre 2024 2 385
5 févr. 2011 à 20:25
si cela est "imposé" par ton hébergeur, (solution gratuite ou autre de ce genre je suppose ...) m'étonnerait beaucoup que tu puisses manipuler ainsi :-)
-1