Url Rewriting + sous domaine

Résolu
Flachy Joe Messages postés 2102 Date d'inscription   Statut Membre Dernière intervention   -  
bg62 Messages postés 23733 Date d'inscription   Statut Modérateur Dernière intervention   -
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 2102 Date d'inscription   Statut Membre Dernière intervention   261
 
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 23733 Date d'inscription   Statut Modérateur Dernière intervention   2 409
 
d'où ma réponse .... quel est l'hébergeur (sans http:///////)
:)
0
Flachy Joe Messages postés 2102 Date d'inscription   Statut Membre Dernière intervention   261
 
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 23733 Date d'inscription   Statut Modérateur Dernière intervention   2 409
 
ok
@+
0
bg62 Messages postés 23733 Date d'inscription   Statut Modérateur Dernière intervention   2 409
 
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