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

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

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

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

Q&A

解決済

3回答

1294閲覧

サーバーの引っ越し、およびSSL化に関してご教示ください

marquez

総合スコア13

WordPress

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

0グッド

0クリップ

投稿2020/05/07 06:01

編集2020/05/08 13:57

お世話になります。表題の件、ご教示ください。

SSL化していないwordpressのサイトがあり、この度サーバーの引っ越しを行い、それに伴い、ディレクトリの構成変更、およびSSL化を進めました。

旧サーバーでは、
http://wxample.com/wp 内にwordpressのファイル群が設置されているものの、
http://wxample.com/ とアクセスしても、htaccessで/wp以下を読みに行くよう設定されています。

これを今回、新しいサーバーに引っ越した際、ディレクトリ構成を見直し、/wpディレクトリを省ていルートディレクトリ直下にWordpressのファイルを設置し、そしてSSL化を行いました。

SSLでアクセスできるまで確認はしているので、Googleに認識をしてもらうためにも、またSSL以前のURLにアクセスしてきた方のためにも、htaccsessでリダイレクトをかけるよう設定したいと考えています。

前置きが長くなりましたが、今回の作業、ディレクトリ構成が変わったわけですが、その対策のとし知人より、wp-config.php を編集することを教えられ、
define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com');
を追加したわけですが、これが影響してか、httpsへリダイレクトするようhtaccessの設定を行うと、多くのページがエラーとなってアクセス出来ない状況となります。(知人はこの方法しか知らないとのこと)

恐れ入りますが、アドバイスいただくことは可能でしょうか?

ディレクトリ構成が変わったので、この設定は無視できませんが、httpsヘリダイレクト出来ないのも大きなマイナスになると思っての質問です。

私なりに調べ、wp-config.phpではなく、データベース内のwp_optionsにあるURLの部分(2か所)を修正することでディレクトリ構成が変わったことの対策になるとまでは調べたのですが・・・
アドバイスいただければ幸いです。よろしくお願いいたします。

■アクセス出来なくなるページについて
akkmanさんからの質問に回答します。

ご質問ありがとうございます。感謝いたします。再度確認したところ、TOPページもアクセス出来ません。500エラーとなってしまいます。

■現在のコードの一部
index.php

<?php /** * Front to the WordPress application. This file doesn't do anything, but loads * wp-blog-header.php which does and tells WordPress to load the theme. * * @package WordPress */ /** * Tells WordPress to load the WordPress theme and output it. * * @var bool */ define('WP_USE_THEMES', true); /** Loads the WordPress Environment and Template */ require( dirname( __FILE__ ) . '/wp-blog-header.php' );

.htaccess

#RewriteEngine On #RewriteCond %{HTTPS} off #RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] #BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress SetEnvIf Request_URI ".*" Ngx_Cache_NoCacheMode

wp-config.php(DB情報、ドメイン部分は*で伏せています)

<?php /** * WordPress の基本設定 * * このファイルは、インストール時に wp-config.php 作成ウィザードが利用します。 * ウィザードを介さずにこのファイルを "wp-config.php" という名前でコピーして * 直接編集して値を入力してもかまいません。 * * このファイルは、以下の設定を含みます。 * * * MySQL 設定 * * 秘密鍵 * * データベーステーブル接頭辞 * * ABSPATH * * @link http://wpdocs.osdn.jp/wp-config.php_%E3%81%AE%E7%B7%A8%E9%9B%86 * * @package WordPress */ // 注意: // Windows の "メモ帳" でこのファイルを編集しないでください ! // 問題なく使えるテキストエディタ // (http://wpdocs.osdn.jp/%E7%94%A8%E8%AA%9E%E9%9B%86#.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.82.A8.E3.83.87.E3.82.A3.E3.82.BF 参照) // を使用し、必ず UTF-8 の BOM なし (UTF-8N) で保存してください。 // ** MySQL 設定 - この情報はホスティング先から入手してください。 ** // /** WordPress のためのデータベース名 */ define('DB_NAME', '******'); /** MySQL データベースのユーザー名 */ define('DB_USER', '*****'); /** MySQL データベースのパスワード */ define('DB_PASSWORD', '*******'); /** MySQL のホスト名 */ define('DB_HOST', '******'); /** データベースのテーブルを作成する際のデータベースの文字セット */ define('DB_CHARSET', 'utf8'); /** データベースの照合順序 (ほとんどの場合変更する必要はありません) */ define('DB_COLLATE', ''); /**#@+ * 認証用ユニークキー * * それぞれを異なるユニーク (一意) な文字列に変更してください。 * {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org の秘密鍵サービス} で自動生成することもできます。 * 後でいつでも変更して、既存のすべての cookie を無効にできます。これにより、すべてのユーザーを強制的に再ログインさせることになります。 * * @since 2.6.0 */ define('AUTH_KEY', ',{(;mu;ZLl{ZiC*NsvpqTBw%E0=dxTO&[ 5XkP:=j:,S*j(:.F?Ftd}yg~!I|J~j'); define('SECURE_AUTH_KEY', 'cI(jP%W}Ivb(J!rY)ki<Q]SFM]=#X::h3*F3*[)A2c>~`(SW}1XP+7hZ!carc*}D'); define('LOGGED_IN_KEY', '/Ei<]`Bx$RC|heBbLL|!uB!TO_1`]=g5S_)bWGP5_gR!*WmR{#UJK0;1R5$V00iT'); define('NONCE_KEY', '-b6jp~&@Y}pDjAi8uXqsCOn[1BJ(N>t9;xni>;_e?{%-B$4N_F2iH(2B}BX>9w~n'); define('AUTH_SALT', 'rK5I(/`eXW@R5x9<hM:>3pjr4^1a[+guAWFmh`&A#8z{))qSOjS9vNaf4$1OMCc}'); define('SECURE_AUTH_SALT', 'qQl&I$l!{&dM ):h2mUgzeC*PU[|~`X`Zi(XbU6Qd>@9:}R0/Yl4+BrzSAFiG_a5'); define('LOGGED_IN_SALT', 'jmP4%gE@fFJ^7P&,k|z:;W}=fEvw>CpuaR@C2 @$Zx$jv`-R4tI+Q&O<|*$cOYW7'); define('NONCE_SALT', '0aX^R[++@?m72M2MWNW~mY#b<Ci%/-, f}~I<`(L1Oq_9wg:p9V]Y<;7fKr[sO{c'); /**#@-*/ /** * WordPress データベーステーブルの接頭辞 * * それぞれにユニーク (一意) な接頭辞を与えることで一つのデータベースに複数の WordPress を * インストールすることができます。半角英数字と下線のみを使用してください。 */ $table_prefix = 'wp_'; /** * 開発者へ: WordPress デバッグモード * * この値を true にすると、開発中に注意 (notice) を表示します。 * テーマおよびプラグインの開発者には、その開発環境においてこの WP_DEBUG を使用することを強く推奨します。 * * その他のデバッグに利用できる定数については Codex をご覧ください。 * * @link http://wpdocs.osdn.jp/WordPress%E3%81%A7%E3%81%AE%E3%83%87%E3%83%90%E3%83%83%E3%82%B0 */ /*define('WP_DEBUG', false);*/ define('WP_DEBUG', true); /* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */ /** Absolute path to the WordPress directory. */ if ( !defined('ABSPATH') ) define('ABSPATH', dirname(__FILE__) . '/'); define('WP_SITEURL','https://****.com'); define('WP_HOME', 'https://****.com'); /** Sets up WordPress vars and included files. */ require_once(ABSPATH . 'wp-settings.php');

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

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

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

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

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

akkman

2020/05/07 06:53

>httpsへリダイレクトするようhtaccessの設定を行うと、多くのページがエラーとなってアクセス出来ない状況となります。 エラーになるページは全てではない状態ですか?
guest

回答3

0

ベストアンサー

Oさんがおっしゃっている通り、wp-configの記述は一度、削除orコメントして試されると良いかと思います。

DB上の home, siteurl を正しいURLに修正したのであれば、

wp-configの記述は一旦削除(もしくはコメントアウト) してしまって構わないはずです。
※wp-configに書くと、[一般]のURL部分がグレーアウトになります。

あと、.htaccessの「SetEnvIf Request_URI ".*" Ngx_Cache_NoCacheMode」の記述が何なのかわかっていないですが、サーバーはXサーバーですかね?
Xサーバーだとこの記述が勝手に入れられるのかなと思って、自分のサイトを確認したところ(Xサーバーです)
.htaccessの先頭に以下の記述がありました。

SetEnvIf Request_URI ".*" Ngx_Cache_NoCacheMode=off SetEnvIf Request_URI ".*" Ngx_Cache_StaticMode <IfModule mod_rewrite.c> RewriteEngine On   ・   ・

この辺りも怪しいと思っています。。

最後にパーミッションあたりでしょうか
WordPress移行時に500エラーが発生する場合の原因&対処法

的確なアドバイスになっていないかもしれませんが、い
①wp-configの削除・コメント化
②.htaccess「SetEnvIf Request~」の編集
③パーミッション確認

投稿2020/05/10 00:49

y.you

総合スコア16

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

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

marquez

2020/05/10 03:24

cr_yukoさん 御親切な回答ありがとうございます。 別件の急用でサイトの対応がすぐに出来ない状態となってしまいましたが、落ち着き次第改めて確認いたします。 区度に渡りご親切な回答を感謝しています。改めて試してみますね。 ありがとうございました!
guest

0

500エラーの詳細が気になる点です。

  • Wordpresssの設定が悪くエラーになっているのか?
  • https ←→ http の リダイレクトループみたいになっているのか?

chromeなどのブラウザによっては「リダイレクトループになってます」と表示されることもあると思うのですが、どのような表示がでていますか?

私なりに調べ、wp-config.phpではなく、データベース内のwp_optionsにあるURLの部分(2か所)を修正することでディレクトリ構成が変わったことの対策になるとまでは調べたのですが・・・

アドバイスいただければ幸いです。よろしくお願いいたします。

DB上の home, siteurl を正しいURLに修正したのであれば、
wp-configの記述は一旦削除(もしくはコメントアウト) してしまって構わないはずです。
※wp-configに書くと、[一般]のURL部分がグレーアウトになります。

可能であれば、以下の流れで確認してみると、原因を突き止めやすいかもしれません。
①ディレクトリ変更による正しく今までもの表示される (ここではhttp)
②その後https設定をする

直接の答えになっておらず恐縮ですが、ご参考までに。

投稿2020/05/08 15:35

pak_run

総合スコア10

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

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

marquez

2020/05/10 03:22

pak_runさん 御親切な回答ありがとうございます。 別件の急用でサイトの対応がすぐに出来ない状態となってしまいましたが、落ち着き次第改めて確認いたします。 お礼もなしでそのままにしておけなくて・・・ ご対応ありがとうございました。
guest

0

私が同じような修正を行う場合は、以下の箇所を修正する位でwp-config.phpは修正しません。

.htaccess
index.php
管理画面の設定 → 一般

現在、それぞれのファイルのコードがどの様になっているかコピペされると回答がしやすいかもしれません。

(index.phpは/wpディレクトリと同じ場所にもあれば、そのコードも。)

メニューの<code>を使うと見やすいですよ。

投稿2020/05/08 10:57

y.you

総合スコア16

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

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

marquez

2020/05/08 14:04

cr_yukoさん 御親切な書き込みをありがとうございます。諦めかけていたので嬉しいです。 htaccess、index.php、そしてwp-config.phpを質問欄に追記いたしました。 /wpディレクトリは、新しいサーバーにはないので、取り急ぎ上記3つのファイルを記載いたしました。 dashbord内の「設定」⇒「一般」ですが、(調べたところによると、wp-config.phpの書き込みがそうさせているらしいのですが、「WordPress アドレス (URL)」、「サイトアドレス (URL)」は表示されているものの、変更が出来ない状態です(フォームがグレーアウトして反応しない)。 なお、この部分のURLは私自身で、DB内のデータを書き換え、https://からはじまるURLとなっています。(最後のスラッシュは省いた状態) 以上ですが、引き続きアドバイスのほど頂戴できれば幸いです。 よろしくお願いいたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問