2017-12-22 16 views
1

すべてのリンクが相対パス(「/」で始まる)を使用している私のサーバーのサブフォルダにデモ目的のサイトを配置したいと考えています。これはデフォルトでルートフォルダに戻りますが、これを解決する最も簡単な方法はおそらくhtaccessファイルを設定することです。私はちょうどそれを右に得るように思わない。私はここに何かを逃していますか私はテストして、フォルダ内でmod_rewriteが有効になっていることを確認しました。サブフォルダ内のサイトの単純なhtaccessベースのリライト、相対パスとのリンク

Options +FollowSymLinks 
RewriteEngine On 
RewriteBase /mydemo/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

答えて

1

あなたはmydemo/フォルダ内のすべてのあなたのWebスクリプト、PHP、HTML、CSS、画像ファイルを配置し、サイトのルートでこの.htaccessファイルを持つことができます。

Options +FollowSymLinks 
RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(?!mydemo/)(.*)$ mydemo/$1 [L,NC] 
+0

ありがとう! .htaccessを使用するメインルートフォルダには別のサイトがあることを忘れていました。私はそれをローカルで上書きしないとおそらくこのサブサイトに影響を与えますか?それはおそらく別のファイルに移動する必要がありますか? –

+0

このルールの前に 'RewriteCond%{HTTP_HOST} ^(?: www \。)?example \ .com $ [NC]'を配置して、このルールが特定のドメイン名に対してのみ実行されるようにすることができます。 – anubhava

+0

あなたは何を意味するのか分かりませんが、これはすべて同じドメインの下にありますか?あなたはthissite.com/mydemoのようになります –

関連する問題