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

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

ただいまの
回答率

87.93%

wordoressログイン画面にアクセスできない。

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 3,072

score 132

よろしくお願いします。

前回の質問にもありましたが、wordpressでサイトを構築しました。
サーバの情報は下記です。
・FQDN : hoge.hoge.jp
・IP : 10.91.11.〇〇〇
・wordpressのサイトアドレス、wordressアドレスはともにFQDN名で指定

無事にサイトを公開していたのですが、一週間ぶり程度に本日FQDNでアクセスするとDB接続エラーが発生していました。
上司に確認したところ、
FQDNのアクセスはこれから削除するので、原因の確認はIP : 10.91.11.〇〇〇からするように。」
と言われました。

エラー解決後、新たに以下の問題に直面し困っています。
・データベースエラー解決後、HTMLのみのUIになってしまった。
・wordpress管理画面にログインできない(DNS アドレスが見つかりませんでした。とエラー)


少しややこしい内容のため、以下、長文となります。
ご容赦の上、ご提案をいただければ幸いです。 どうぞよろしくお願いいたします。

サイトが閲覧可能だった時から、設定を変更していない為上司に確認したところ、
「wordpressで設定したDBの何かでは????自分で調べるように。
FQDNのアクセスはこれから削除するので、原因の確認はIP : 10.91.11.〇〇〇からするように。」
との事だったため、以下を試しました。

“wp-config.php” のDBの設定確認。

設定されていたユーザーでログインできるか確認(できたが、設定されていたパスワードを入力すると下記エラー)
mysql -u root -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

mysqlソケットエラー?の解決に、以下実行

指定の場所にsocketファイルがあるか確認
ls -al /var/lib/mysql/

なかったので作成
touch /var/lib/mysql/mysql.sock

ディレクトリ所有者の変更
chown mysql:mysql /var/lib/mysql

mysql再起動
/etc/init.d/mysqld restart

http://10.91.11.〇〇〇/wordpress/にアクセス(DBエラーは出なくなりました)
→CSSが全く効いておらずHTMLのみのUI。

wordpress管理画面よりサイトアドレスとwordpressアドレスを変更すれば解決に至るかもしれないと考え、/wp-adminをブラウザに入れると、FQDNのアドレスに遷移してしまい、「NOT FOUND」。

そこで、サーバから直接Mysqlにアクセスし、サイトアドレスとwordpressアドレスを10.91.11.〇〇〇に変更。
管理画面へブラウザアクセスすると、「http のサーバーの DNS アドレスが見つかりませんでした。」

管理画面上の設定では、アドレスは双方FQDN名のURLアクセスとなっているはずです。
FQDNのアクセスが削除されているため、管理画面にアクセスすることができないのでしょうか。
色々と調べたのですがお手上げで、何かここを変えた方が良いとか、思い当たる方法があればアドバイスをいただけませんか。

どうぞよろしくお願いいたします。

補足

以下も試してみましたが、特に変化はみられません。
WordPressのログイン方法とログインできない場合の解決法より、
wp-config.phpに以下を追記

define( ‘RELOCATE’, true );
  • 気になる質問をクリップする

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

+3

DNS アドレスが見つかりませんでした。とエラー

とのことなので、最終的にアクセスしているURLに使われているホスト名(FQDN)の名前解決ができていないのかと思います。

可能性があるのは

  • apache の VirtualHost の設定でIPアドレスでアクセスした時と、FQDNでアクセスした時の動作が異なるように設定されている

  • WordPress の設定変更がうまくいっていないことにより、IPアドレスによるアクセスがWordPressにより旧設定のURLにリダイレクトされている

といったあたりです。


ただそれ以前に、質問にある対応に問題があります。

mysql のソケットというのは、mysql を起動した際に作られるもので、手動でつくって意味のあるものではありません。

同一ファイル名のファイルが存在することにより、WordPressは「DBに接続はできている」と認識認めDBエラーはでていませんが、実際は mysql DBに接続した状況ではないため、WordPressに必要なデータがDBから読み出せず、正常な表示ができない状況になっているのかと思います。

状況からすると、mysql が起動していない状況に見えます。
もしくは設定変更されていませんでしょうか。

状態が不明瞭な状態の中で色々設定値をいじってしまっているようで、初期の問題と異なる別の問題を作りだしてしまっているかもしれませんが、まずは WordPress から mysql への接続が確実にできている状況を作ってみてください。

 追記

mysql.sock 等のファイルは Unix ドメインソケット と呼ばれる仮想ファイルです。
今は混乱すると思いますので詳細は説明しませんが、あるプロセスが別のプロセスと通信したい場合に利用するインターフェイスのようなものです。

「Unix ドメインソケット」「ソケット通信」「socket」などで検索すると調べられるかと思います。

 追記(2017.03.17. 11:15 頃の追記)

define( ‘RELOCATE’, true ); をwp-config.php に設定してみた、とのことですが、これがどのような設定かを確認したでしょうか。

Codex https://wpdocs.osdn.jp/サイト_URL_の変更 にあるのですが、wp-config.php にこの設定値が入っている状態でWPへアクセスがあった際、「そのアクセスがあったURLを正しいものと解釈して、WPの設定を書き換える」というものです。
※そのため、ページにアクセスし、管理ページで設定が修正されていることが確認できたら削除すべき設定です。

それでうまく接続できないようであれば、何か他の要因があることが考えられますので、あちこちいじってしまう前に、どこに問題があるかを1つ1つ検証していきましょう。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/03/17 16:33

    Suenaga様
    結果から申し上げます。無事にログインができました。
    また、今回の詳細なご対応について、私の方からSuenaga様にお詫びがございます…。
    以下内容、少々長くなりますがご確認いただければ幸いです。

    >当初のDB接続エラーは mysql がダウンしていただけだったのではないでしょうか。
    確定はできませんが、どうやらそのようです。上司に確認ができたのですが、接続エラーを確認してからFQDNのアクセスを削除したようなので。

    >WPのサーバから、wp-config.php で設定されているDB情報その通りでDB接続できデータの参照等もできていることが確認できたら、WPのURLを正しいものに修正する手順があります
    このアドバイスに基づき、今一度DB情報をよく確認しました。
    その際、WPのDBのテーブルにある ('home','siteurl')の名前を該当IPに書き換えていたのですが(本質問内容を参照ください)、そこに記載ミスがありました。誤字レベルの低次元な書き間違いです。
    そこを正しいアドレスに直すと、解決いたしました。

    調べても全く分からなかった内容や、補足で新しいご教示もいただき私としてはかなり有難く、感謝しております。
    ですが、貴重なお時間を割いて調査及びご回答をいただいているにも関わらず、原因がこのようなことであった事がわかり、申し訳ない気持ちでいっぱいです。
    本当に申し訳ございませんでした。

    私にとって、今回のご回答は虎の巻になるような内容であるため、ベストアンサーとさせていただきます。
    以後気を付けますので、どうぞよろしくお願いいたします。本当にすみません…。
    最後に図々しいのですが一点質問です。よろしければご教示ください。
    今回ご教示いただいたmysql のソケットについてですが、私が初め不必要に作成したsocketファイルは削除したほうがよろしいのでしょうか?

    どうぞよろしくお願いいたします。

    キャンセル

  • 2017/03/17 17:08

    なんと言うか、ご丁寧にありがとうございます^^;

    > 不必要に作成したsocketファイルは削除したほうがよろしいのでしょうか?

    mysql を停止した時に、そのファイルが残っているようであれば削除したほうがいいです。
    停止した際にファイルがなくなって、再度 mysql を起動した際に出来上がるようであれば、正常です。


    なお、本筋と全く関係ないのですがはまりがちな mysql の仕様についてついでなので書いておきます。
    (参考 http://qiita.com/TanukiTam/items/f6a08740d0fcda0db7be

    mysql に接続する際、 localhost を指定した場合と 127.0.0.1 を指定した場合で、動作が異なります。

    localhost を指定した場合はプロセス間通信となり、Unix ドメインソケットへの接続となります。
    127.0.0.1 を指定した場合、TCPによる通信となります。

    余談でした。

    キャンセル

  • 2017/03/17 17:32

    いえ、低次元な内容で何と言っていいか…すみません。

    余談、ありがとうございます!勉強になるのでうれしいです(^^)

    キャンセル

+1

(根本的な解決にはなっていませんが・・)

アクセス元のマシンの "hosts" ファイルに WordPressのFQDNを記述すれば、
とりあえずブラウザでアクセスできるようになる気がします。

(hosts の例)

10.91.11.ooo    hoge.hoge.jp

それでアクセスできれば、サイト内の情報を修正できるようになると思われます。


(2017-03-17 12:30 追記)

上司の方が、DNS情報を消してしまっていると推測できます。

ブラウザでWordPressにアクセスするマシンがWindowsであれば、
Windows側の"hosts"ファイルを編集する必要があります。

(1) 「メモ帳(notepad.exe)」を 【管理者として実行】 で起動する。
(2) メモ帳で、C:\Windows\System32\drivers\etc\hosts を開く。
(3) "hosts"ファイルに追記。

10.91.11.ooo    hoge.hoge.jp


(4) 上書き保存する。
(5) 念のため、ブラウザを再起動する。(Windows を再起動するのが確実だと思います。)
(6) WordPressにアクセスする。 ( http://hoge.hoge.jp/wordpress/ ?)

これで、表示できると思われます。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/03/17 10:01

    gorogoroIT様
    こちらこそ知識不足のためアドバイスの意図をうまく汲めず申し訳ありません。
    (1)について
    Linuxでサーバ構築およびwordpressの導入を行い、windowsのブラウザからアクセスして
    画面を閲覧しています。
    linuxにアクセスして、hostsファイルに以下を記述しました。
    10.91.11.〇〇〇  hoge.hoge.jp

    (2)については、後ほど確認が取れると思います。
    また質問させていただくかもしれませんが、取り急ぎお礼まで。
    解決までもうしばらくお付き合いいただければ幸いに存じます。

    キャンセル

  • 2017/03/17 12:48

    (1)に関しては、Windows側の"hosts"に追記する必要があります。
    → 回答に追記しました。

    http://10.91.11.〇〇〇/wordpress/にアクセス(DBエラーは出なくなりました)
    > →CSSが全く効いておらずHTMLのみのUI。

    この時の表示は、WordPress で作成したサイトデータ(固定ページ?)の内容で合っていますでしょうか。
    文字情報は表示されるけど、(CSSが適用されていないので)レイアウトはグチャグチャですかね。

    キャンセル

  • 2017/03/17 16:43


    gorogoroIT様
    追記を確認いたしました。
    Windows側の"hosts"ファイルを操作するにあたっては、自分では調べてもたどり着けなかったため、ご教示に感謝いたします。
    また、わかりやすいやり方を記載いただきこちらも大変ありがたいです!この方法もさっそく試させていただきます。

    そして、ご丁寧にご回答いただいたのですが、本件に関してお詫びがございます。
    WPのDBのテーブルにある ('home','siteurl')の名前を該当IPに書き換えていたのですが(本質問内容を参照ください)、そこに記載ミスがありました。誤字レベルの低次元な書き間違いです。
    そこを正しいアドレスに直すと、希望のアドレスでのアクセスに成功いたしました。

    私の方は、新しく知識を得ることができ、有意義な結果となりましたが、反面貴重なお時間を割いて調査及びご回答をいただいたgorogoroIT様には、申し訳ない気持ちでいっぱいです。
    本当に申し訳ございませんでした。

    以後気を付けますので、どうぞ今後もアドバイスをいただければ幸いです。

    キャンセル

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

  • ただいまの回答率 87.93%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る