2016-12-21 7 views
2

Ceci est mon exemple le siteredirect htaccess à sous-répertoire par défaut, mais le site principal ouvert de lien dans le site sous-répertoire

http://www.example.com/ - (site principal, en anglais)

http://example.com/mylang/ - (site dans ma langue)

Les deux sites fonctionnent avec une installation multiple de wordpress.

Maintenant, lorsque l'utilisateur entrer dans mon site Web, il doit être redirigé vers http://example.com/mylang/ et il y a un lien pour aller au site principal http://www.example.com/ si l'utilisateur veut voir.

Comment faire avec .htaccess? Je suis ouvert pour obtenir d'autres solutions (redirection php ou javascript) également.

+0

Quel est le statut de cette question? – chris85

Répondre

0

Vous devriez mettre ci-dessous code à l'intérieur .htaccess du dossier racine du site principal

RewriteEngine on 
RewriteCond %{REQUEST_URI} ^/$ 
RewriteRule (.*) http://example.com/mylang [R=301,L] 
+1

Ceci fonctionne comme 'http: // example.com' à' http: // example.com/mylang'. Mais lorsqu'on clique sur 'http: // example.com' depuis' http: // example.com/mylang', il redirige vers 'http: // example.com/mylang'. Je ne peux pas avoir le site principal. Aidez-moi, s'il vous plaît. –

1

On main site vérifier si une session est définie, sinon rediriger. (Notez cela doit être fait avant toute sortie est envoyée)

session_start(); 
if(!isset($_SESSION['been_here'])) { 
    header('Location: http://example.com/mylang/'); 
    exit(); 
} 

Sur la mylang régler la session.

session_start(); 
$_SESSION['been_here'] = 1; 

La durée de cette session ne sera pas redirigée sur les visites de première page.

+0

Initialement, cela a fonctionné pour moi. Merci. Mais comme j'ai activé les mises à jour automatiques dans WordPress, les fichiers index.php restaurent ou surchauffent et mes codes disparaissent. Donc ce que j'ai fait était, replié wp dans mon localhost comme sauvegarde, réinstallé wp mylang par défaut sur le serveur –