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

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

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

.htaccess

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

Q&A

解決済

1回答

645閲覧

WordPressのサイトの下層ディレクトリにインストールしたWordPressの記事ページが404で表示されない

weblog_life

総合スコア7

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

.htaccess

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

0グッド

1クリップ

投稿2019/04/01 05:22

デザイン、プラグインなど個別に使用したいのでマルチサイトではなく、下層ディレクトリに別途WordPressをインストールしたのですがうまく表示されません。

下層ページのTOP以下(記事ページ)などを開くと親ブログの404エラーになります。表示することは可能でしょうか?

親ブログURL https://example.com/
子ブログURL https://example.com/wp/

親ブログの.htaccess

html

1<IfModule mod_rewrite.c> 2 RewriteEngine On 3 RewriteBase / 4 RewriteRule ^index.php$ - [L] 5 RewriteCond %{REQUEST_URI} !.(gif|css|js|swf|jpeg|jpg|jpe|png|ico|swd|pdf|svg|eot|ttf|woff)$ 6 RewriteCond %{REQUEST_FILENAME} !-f 7 RewriteCond %{REQUEST_FILENAME} !-d 8 RewriteCond %{REQUEST_URI} !(^/wp/) 9 RewriteRule . /index.php [L] 10</IfModule>

子ブログの.htaccess

html

1<IfModule mod_rewrite.c> 2 RewriteEngine On 3 RewriteBase /wp/ 4 RewriteRule ^index.php$ - [L] 5 RewriteCond %{REQUEST_URI} !.(gif|css|js|swf|jpeg|jpg|jpe|png|ico|swd|pdf|svg|eot|ttf|woff)$ 6 RewriteCond %{REQUEST_FILENAME} !-f 7 RewriteCond %{REQUEST_FILENAME} !-d 8 RewriteRule . /wp/index.php [L] 9</IfModule>

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

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

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

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

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

CHERRY

2019/04/01 06:11

Webサーバーのログには、どのようなメッセージが出力されていますか?
momosiri

2019/04/01 07:09

情報が少ないので何ともいえないところではありますが・・・ 単純に親サイトにwpっていうスラグを持つカテゴリーやタグ、投稿タイプなどありませんか??
weblog_life

2019/04/01 07:12

エラーログは特に該当箇所でのログは見当たりませんでした。アクセスログは以下のような感じでした。 "GET /wp/hello-world/ HTTP/2.0" 404 8281 "https://example/wp/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36" "-"
weblog_life

2019/04/01 07:18

momosiriさん ディレクトリ名と同様のスラッグは特にありません。 親の.htaccessで該当ディレクトリを除外していますのでトップは表示されるんですが、その下層がでないです。 RewriteCond %{REQUEST_URI} !(^/wp/)
momosiri

2019/04/01 07:30

子ブログのURLがhttps://example.com/wp/で、特に親サイトにwpというスラグがないなら特に RewriteCond %{REQUEST_URI} !(^/wp/) の記述は必要ないと思うんですけどどうでしょう??
weblog_life

2019/04/01 07:38

説明不足していましたが親のパーマリンク設定が以下のようにしているので除外していました。 https://example.com/投稿名/ /wp/は物理的にファイルがあるので表示されていますが、/wp/投稿名はファイルが存在しないので親の404になっているようなんですが・・・ちなみに該当箇所を外しても同じでした
momosiri

2019/04/01 07:52

上のコードを削除してサーバー上で上書き更新した上で、ブラウザのキャッシュをクリアするか、別の(今まで副サイトにアクセスしたことのない)ブラウザでアクセスしたらどうでしょう??
weblog_life

2019/04/01 08:03

変わりませんでした・・・。
CHERRY

2019/04/01 08:18

親側の WordPress で、 [管理画面]=>[設定]=>[パーマリンクの設定] を開いてそのまま [設定を保存]ボタンを押して、更新。 子側の WordPress サイトの管理画面にログインして、[パーマリンクの設定]を開いて同様に更新。 そして、アクセスするとどうなりますか?
weblog_life

2019/04/01 08:27

どちらもそのままパーマリンク設定を更新すると変わらないのですが、子側のパーマリンク設定を投稿名から基本(?p=123)に変更すると表示されました! 表示されるということは、やはり.htaccessの設定の問題なんでしょうか。
momosiri

2019/04/01 14:49

基本(?p=123)に変更すると表示されました!・・・ということは、.htaccess自体が無視されてるのかもしれませんね。 https://codex.wordpress.org/Using_Permalinks の公式コーデックスに出ているものですが、サーバー側で.htaccessを無視するようになっている場合には <Directory /> Options FollowSymLinks AllowOverride All </Directory> を記述することで有効になることもあるようです。詳しくは上記リンクを参照してみてください。
weblog_life

2019/04/02 00:08

親側のパーマリンク設定は投稿名になっているのでサーバー側の設定は有効だとは思います。
guest

回答1

0

自己解決

一番肝心なことが抜けてました・・・。
nginxで運用中のサーバーだったためそもそも.htaccessは関係なし。

confファイルに以下追記で動作し、無事解決しました。コメント頂いた皆様ありがとうございました。

html

1location @wp { 2 rewrite ^/wp(.*) /wp/index.php?q=$1; 3} 4location ^~ /wp { 5 root /home/hogehoge/DocumentRoot; 6 index index.php index.html index.htm; 7 try_files $uri $uri/ @wp; 8 9 location ~ .php$ { 10 include fastcgi_params; 11 fastcgi_param SCRIPT_FILENAME $request_filename; 12 fastcgi_pass 127.0.0.1:9000; 13 } 14}

投稿2019/04/03 02:02

weblog_life

総合スコア7

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問