2008-09-16 15 views
0

私は、ルートディレクトリから数年間実行していた掲示板(punBBベース)を持っています。私は愚かに少しガーデニングをすることを決め、その過程でpunbbコードをそれ自身のサブディレクトリに移動しました。コードは素晴らしいです。ブラウザーが新しいサブディレクトリーを指している限りです。サイトのルートにウェブアプリを表示させる方法は?

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

しかし、トリックを行うようには見えなかった。問題は、私は次のように持っていたルートにインデックスファイルを試してみました...ユーザーがルートでそれを見ることを期待している

です。ですから、.htaccessのmod_rewriteの "クールなブードゥー"を使ってみましたが、正しく動作させるための正しい組み合わせのルールを見つけることができません。

ユーザーが入力:

http://guardthe.net 

ブラウザが表示されます。ここでは

は私が起こるしたいと思いますものです

http://guardthe.net/punbb/ 

または

http://punbb.guardthe.net/ 

このことが可能であり、または私はちょうどmoコードベースをルートに戻しますか?

答えて

1

301 HTTPパーマネントリダイレクトを持つPHPファイル。

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

ブラウザが再ダイレクトます検索エンジンの親しみやすさとguardthe.netのルートディレクトリにあるindex.phpに次のように入れてください。

+0

サーバーにmod_rewriteがサポートされていない限り、ユーザーはこのWebページをダウンロードしてブラウザに表示してから、サーバーに2回目のトランザクションを実行する必要があります。遅れは通常、ユーザーが気付くのに十分な長さです。可能であればmod_rewriteに行く。 – Cheekysoft

0

あなたのコード例では、不足しているが、ここでのmod_rewriteを使用して、それを行うための一つの方法ですされています

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

明確にするための注意: これは、webrootの.htaccessファイル内にある必要があります(punbbディレクトリ内ではありません)。 –

0

あなたが簡単かつ迅速にこれの世話をするために、小さなリダイレクトするスクリプトを書くことができます。

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

あなたのルートディレクトリにあなたのindex.phpで唯一のコンテンツとしてこれを入力し、そのフォルダに送信されたすべての要求は、フォーラムにユーザーをリダイレクトします。 .htaccesでこのよう

3

何かがそれを行う必要があります。

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

301リターンコードは、それがかのうブラウザがブックマークを更新するために作るpermanentmとしての動きをマークすることです。

関連する問題