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

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

新規登録して質問してみよう
ただいま回答率
85.48%
リダイレクト

プログラムの入力元や出力先を通常とは別の場所に転送させることをリダイレクトと呼びます。

.htaccess

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

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Q&A

解決済

2回答

3899閲覧

さくらサーバにて、特定のディレクトリをリダイレクトさせない.htaccessの作り方を教えてください

makoto-n

総合スコア436

リダイレクト

プログラムの入力元や出力先を通常とは別の場所に転送させることをリダイレクトと呼びます。

.htaccess

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

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

0グッド

0クリップ

投稿2016/07/21 02:26

編集2016/07/21 02:56

環境はさくらのサーバーです。
.htaccessで、画像などをおいているディレクトリをリダイレクトするようにしていたのですが
今回トップページから展開する子ページとは別にwordpressを増設することにしました。

なのですが、 サイトURL/wp/ にアクセスしようとしたところ サイトURL/404.html にリダイレクトしてしまいます。

ここで /wp/ をリダイレクトから除外したのですが、調べて試してもうまくいきませんでした。
レンタルサーバでテストはしないでくれとのことでしたのでこちらで質問します。

index
|--goods--sample.html
|--images--sample.png
|--wp(wordpress)
見づらいですがこんな形になっています。

goodsというフォルダの中のsample.htmlにはアクセスできるのですが、
wpというwordpress用のフォルダ、そして記事一覧にはアクセスできなくなっています。

作成しなおしたものはこのようなものです。

RewriteEngine on RewriteBase / RewriteCond %{HTTP_HOST} ^(www\.example\.com)(:80)? [NC] RewriteCond %{REQUEST_URI} !(^/wp/) RewriteRule ^(.*) http://example.com/$1 [R=301,L] order deny,allow ErrorDocument 403 /404.html ErrorDocument 404 /404.html ErrorDocument 500 /404.html ErrorDocument 503 /404.html

すみません、改善点を教えてください。

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

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

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

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

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

guest

回答2

0

回答依頼を受けたのでお答えします。
でも、あんまり得意じゃないんです(笑)
(嘘が含まれるので、参考になさらないでください)

# # # # # # # # # # # RewriteEngine on RewriteBase / # RewriteCond %{REQUEST_URI} !(^/wp/) RewriteCond %{HTTP_HOST} ^(www\.example\.com)(:80)? [NC] RewriteCond %{REQUEST_URI} !^/wp/ RewriteRule ^(.*) http://example.com/$1 [R=301,L] order deny,allow ErrorDocument 403 /404.html ErrorDocument 404 /404.html ErrorDocument 500 /404.html ErrorDocument 503 /404.html ```まず、`RewriteCond`の最後に`[NC]`が付いてますが、このフラグは`RewriteRule`のものです。 (**上記はうそです**。取り消し線が欲しい・・・合ってました。[NC] = no case の意味でした。 __apacheのマニュアルはひどいよ・・・文法のところと後の解説のところが違うんだもん。`[flag]`をappend出来るって最後に書いてあるし。ブツブツ…__) そして、二つ目の`RewriteCond`に余計な括弧が付いています。これはたぶん不具合には関係ないとは思いますが、要らないものは取ってシンプルにした方が原因究明に役立つと思います。 また、RewriteCondに渡される`%{REQUEST_URI}`は、先頭のスラッシュは除去されるようです。 (**これまたうそ**)

投稿2016/07/21 03:14

編集2016/07/21 05:04
shi_ue

総合スコア4437

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

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

makoto-n

2016/07/21 04:22

すみません。ありがとうございます。 でもエラーページ(404)に飛んでしまいます、、、。
shi_ue

2016/07/21 04:31

ChromeのデベロッパーツールでNetworkタブを開くと遷移が見れます。 それのどこで404が出ているか分かるはずです。 http://example.com/wp に移動してエラーが出ているのか、 それとも、http://www.example.com/wp のままエラーが出ているのかで違いますよね。
makoto-n

2016/07/21 04:38

なぜかhttp://example.com/wp/2016/07/20/15にはアクセスできるんです。 でもindexには飛べない。 generalにはこう書いてありました。 Request URL:http://example.com/wp/ Request Method:GET Status Code:403 Forbidden Remote Address:112.78.112.48:80
TaichiYanagiya

2016/07/21 04:39

%{REQUEST_URI} は先頭のスラッシュありです。
shi_ue

2016/07/21 04:41

おお!詳しい方が!ぜひ回答をお願いします。
makoto-n

2016/07/21 04:44

すみません、お願いします。!!
TaichiYanagiya

2016/07/21 04:48

makoto-n さんの設定で間違っていないと思うのですが。 URL のパスは「/wp」ではなく「/wp/」でアクセスしていますよね?
makoto-n

2016/07/21 04:49

はい。 アクセスしています。
TaichiYanagiya

2016/07/21 04:54

403 Forbidden ということは、DirectoryIndex index.php が必要なのではないですか?
makoto-n

2016/07/21 04:56

詳しくはないのですが、wp/の直下にindex.phpは入っています。
TaichiYanagiya

2016/07/21 04:57

.htaccess に「DirectoryIndex index.php」を追加設定してみてください。
TaichiYanagiya

2016/07/21 04:59

> 「 /var/www//example 」になってしまう、ということでしょうか? はい、そうなります。 ファイルシステムによって違うかもしれませんが、「/」が連続した場合、1つの「/」と同じです。
makoto-n

2016/07/21 05:01 編集

Request Method:GET Status Code:200 OK できました!!! お二方、本当にありがとうございます!
shi_ue

2016/07/21 05:02 編集

なるほど。 makoto-nさん、良かったですね。わたしの回答は忘れてください(笑) ぜひ、自己回答して、ベストアンサーを選んでくださいね。そうでないと、この回答が正しいように見えますので。よろしくです。
makoto-n

2016/07/21 05:03

わかりました。 shi_ueさんもありがとうございました。
guest

0

自己解決

DirectoryIndex index.html .ht index.php
を.htaccessに記述したところ、/wp/もうまく表示されました。

手伝っていただいた勇士のお二方、大変ありがとうございました。

投稿2016/07/21 05:05

編集2016/07/21 05:08
makoto-n

総合スコア436

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問