2017-01-02 5 views
1

からウェブサイトへのアクセスを防止します。ルートフォルダ(/)に1つのWebサイトがあり、ルートの下にある別のフォルダにある他のWebサイトがあります。 /something どのように私はGoDaddyの上にホストされている複数のWebサイトを持っているルートのウェブサイト

フォルダ内の/

  • www.something.com

    • www.mydomain.comユーザーがもしURL www.mydomain.com/somethingそれはウェブサイトwww.something.comの内容を表示します。

      彼/彼女のタイプの場合、私はwww.mydomain.com後に任意のサブディレクトリ名、ユーザーがwww.mydomain.comにリダイレクトされたいです。これは、ルート.htaccessファイルで使用するために、ルートにサブディレクトリに何かをリダイレクトします

      RewriteEngine On 
      RewriteCond %{ENV:REDIRECT_STATUS} 200 
      RewriteRule^- [L] 
      
  • 答えて

    1

    は私がルートフォルダに.htaccessファイルに次があります。彼らは(彼らはあまりにもルートにリダイレクトされます)は動作しませんよう

    # Redirect anything in a sub-directory to root 
    # (any URL with a slash in it, not including the first one) 
    RewriteRule// [R=301,L] 
    

    あなたのスタイルシートのすべてを覚えている、画像、JavaScriptなどのサブディレクトリにあってはなりません。この方法では、ウェブサイトのすべてがルートになっている必要があります。

    +0

    を合意します。しかし、それは求められたものです。私はすでに私の答えの心配を指摘しました。新しいサイトが追加されたときの将来の互換性のために、この方法が要求されることがあります。 – SuperDuperApps

    +1

    これを見ている人のためにクリアするだけです。コメントは削除されているので、ここではリダイレクトループがあると言われています。ループはありません。このように見えるかもしれませんが、 '.htaccess'ファイルでは最初のスラッシュが一致したURLに存在しないので、サブディレクトリと一致することに注意してください。個人的に私はそれがかなりクールに見えると思います!そして素敵できちんとしたコンパクトです。 – SuperDuperApps

    1

    あなたは、サイトのルートの.htaccessにこのルールを使用することができます。

    RewriteEngine On 
    
    # redirect to/of something or somethingelse is accessed from mydomain.com 
    RewriteCond %{HTTP_HOST} ^(www\.)?mydomain\.com$ [NC] 
    RewriteRule ^(something|somethingelse)//[L,R=301,NC] 
    
    RewriteCond %{ENV:REDIRECT_STATUS} 200 
    RewriteRule^- [L] 
    
    +0

    質問は "彼らがサブディレクトリ名を入力した場合"にリダイレクトすることでしたので、これは答えません。指定されたサブディレクトリだけをリダイレクトし、 "any"はリダイレクトしません。 – SuperDuperApps

    +0

    それが目的です。そうしないと、 'mydomain.com/css /'や 'mydomain.com/js /'のようなディレクトリもrootにリダイレクトされます。 – anubhava

    +0

    それは意図的なことかもしれませんが、質問に答えません! – SuperDuperApps

    関連する問題