2008-09-16 4 views
0

J'ai un tableau d'affichage (basé sur punBB) que je n'utilisais plus depuis le répertoire racine pour quelques années. J'ai bêtement décidé de faire un peu de jardinage et dans le processus déplacé le code punbb dans son propre sous-répertoire. Le code fonctionne très bien; tant que vous pointez le navigateur sur le nouveau sous-répertoire. Le problème est que les utilisateurs attendent de le voir à la racine ...Comment faire apparaître une application web à la racine du site?

J'ai essayé un fichier d'index dans la racine qui avait les éléments suivants:

<?php chdir('punbb'); 
include('index.php'); 

Mais cela ne semble pas faire l'affaire . J'ai donc essayé d'utiliser le "cool voodoo" de mod_rewrite dans .htaccess mais je n'arrive pas à trouver la bonne combinaison de règles pour le faire fonctionner.

Voici ce que je voudrais faire passer:

utilisateur entre:

http://guardthe.net 

navigateur affiche:

http://guardthe.net/punbb/ 

ou

http://punbb.guardthe.net/ 

Est-ce possible, ou devrais-je juste ve la base de code dans la racine?

Répondre

1

un fichier PHP avec une redirection 301 HTTP permenant.

il faut mettre dans index.php dans le répertoire racine de guardthe.net

<?php 
Header("HTTP/1.1 301 Moved Permanently"); 
Header("Location: http://guardthe.net/punbb/"); 
?> 

navigateur re-direct avec la convivialité du moteur de recherche.

+0

À moins qu'il n'existe aucun support mod_rewrite sur votre serveur, vous devez éviter cette approche car l'utilisateur doit télécharger cette page Web et demander au navigateur de l'afficher avant d'exécuter une seconde transaction sur le serveur. Le délai est généralement assez long pour que l'utilisateur le remarque. Aller pour mod_rewrite si poss. – Cheekysoft

0

Votre code exemple est absent, mais voici une façon de le faire en utilisant mod_rewrite:

RewriteEngine on 
RewriteRule ^$ http://guardthe.net/punbb/ [L,R=301] 
+0

Juste une note à clarifier: Cela devrait être dans le fichier .htaccess du site web, (pas dans le répertoire punbb). –

0

Vous pouvez écrire un petit script de redirection pour prendre soin de ce simple et rapide.

<?php 
header('Location: http://guardthe.net/punbb/'); 
?> 

Entrez que le seul contenu de votre index.php dans votre répertoire racine, et toutes les demandes envoyées à ce dossier sera ensuite rediriger l'utilisateur vers le forum.

3

Quelque chose comme ça dans .htaccess devrait le faire:

RewriteEngine On 
    RewriteRule ^/?$ /punbb/ [R=301,L] 

Le code 301 est de retour pour marquer le mouvement comme permanentm ce qui en fait pour le navigateur posible de mettre à jour les signets.

Questions connexes