質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

Q&A

1回答

726閲覧

サブドメインでテスト環境をつくり、.htaccessで配下全てに認証をかけたい

testbook

総合スコア6

.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

0グッド

0クリップ

投稿2018/03/14 18:12

内容

現在レンタルサーバーでwebページを作成しています。
その中で、.htaccessで
①index.html無しURLへのリダイレクト
②wwwサブドメイン付きのURLへリダイレクト
③httpsのURLへリダイレクト
を行っています。
これに加えてサブドメインでテスト環境(https://test.○○○.comのように)をつくっています。

この場合、ドキュメントルートにファイルを置くとどちらも読み込んでしまうので、
/www と /test のように同階層で並列にフォルダをつくり、本番環境とテスト環境用にアップロード先を変えています。
その際、.htaccessで /test 配下のみに認証をかけ、かつ上記の①・③のリダイレクトは活かしたいと思っています。

現在の記述だと、本番環境でhttps://www.○○○.com/index.html とすると、
https://www.○○○.com/www/ のようにアップロード用のフォルダ名がついたURLにリダイレクトし、
403エラーを返します。その場合の.htaccessの記述方法を教えていただきたいです。

また、現在はTOPのindex.htmlしかありませんが、下層に作成した際も同様のリダイレクトを行うように
設定をしておきたいです。
加えて、上記以外に最適なテスト環境の構築方法(サブディレクトリに作るなど)があれば教えていただきたいです。

現在のファイル構造

ドキュメントルート/www  ←  本番環境
ドキュメントルート/test  ←  テスト環境(配下全てに認証をかけたい)

該当のコード

RewriteEngine On Order Allow,Deny Allow from all Satisfy any # www有りのURLに統一 RewriteCond %{HTTP_HOST} ^○○○.com RewriteRule ^(.*)$ https://www.○○○.com/$1 [R=301,L] # index.html無しのURLに統一 RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$ https://%{HTTP_HOST}/$1 [R=301,L] # https有りのURLに統一 RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] # テスト環境はBasic認証をかける SetEnvIf Host ^test.○○○.com.* test_env deny from env=test_env # テスト環境 Basic認証用 AuthUserFile ××××/××××××/×××××/×××/.htpasswd AuthGroupFile /dev/null AuthName "Please enter your ID and Password" AuthType Basic require valid-user

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

まずは、認証なしでメイン、サブドメインの参照が正常にできるのを確認してから、認証を入れていけばいいでしょうね

投稿2018/03/14 23:34

y_waiwai

総合スコア87719

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問