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

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

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

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

WordPress

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

.htaccess

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

Q&A

解決済

2回答

3347閲覧

You don't have permission to access /wp-login.php on this serverとなってしまう

hatpotfoot

総合スコア0

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

WordPress

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

.htaccess

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

0グッド

0クリップ

投稿2020/08/26 14:39

前提・実現したいこと

WordPressをCentOS8にインストールしているのですが
.htaccessにIP制限の記述として下記のように入力すると
エラーになってしまいます。

どこの記述を正せば良いかわからず困っています。
ご教授いただけますでしょうか?

<Files wp-login.php> Order deny,allow Deny from all Allow from 自分のグローバルIPアドレス </Files>

発生している問題・エラーメッセージ

Forbidden
You don't have permission to access /wp-login.php on this server.

バージョン情報

Apache/2.4.37
php7.4.9,
mariaDB10.5.5

試したこと

・WordPress用で作成したテーブルの削除
・グローバルIPアドレスの変更(ルーターの再起動)
・WordPressのディレクトリとファイルをすべて削除
・httpd.confの.htaccess有効化は確認済み

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

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

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

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

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

otn

2020/08/26 14:49

その5行を追加する前はアクセス出来ていたのでしょうか?
hatpotfoot

2020/08/26 14:57 編集

はい。アクセスできていました。 アクセスできなくなったのは、下記の手順4の時点です。 1.追記前は普通にログイン画面表示可能 2.追記後にログイン画面表示可能 3.試しに自分のグローバルIP以外の値を入力(1桁だけ変更)→ログイン画面表示されなくなった。  ※ただしくIP制限できていることが確認できたので手順4を実施 4.自分のグローバルIPアドレスに戻す。自分のグローバルIPアドレスにもかかわらず、ログイン画面が表示できなくなった。(この時点での投稿をいたしました)
otn

2020/08/26 14:59

重大な情報を伏せて質問すると適切な回答が得られません。 ブラウザのキャッシュをクリアしてみてください。
hatpotfoot

2020/08/26 15:08

失礼いたしました。以後気をつけます。 キャッシュですが削除しても同じくエラーが起きてました。 試したことの記載が不足しておりました。 この作業はEdgeで実施していたのですが、切り分けのためにIE、クローム、firefoxで試しても エラーが出てしまいました。
otn

2020/08/26 15:21

そうすると、あとは、タイプミス・編集ミスくらいでしょうか。アドレス間違いとか、全角空白とか。 一度成功しているので考えにくいですが、IPv6でアクセスしているのにIPv4のアドレスを書いているとかもあり得ます。 エラーログは見ていますか?
hatpotfoot

2020/08/26 15:28

エラーログは一通り見たのですが、自身の知識では特定に至りませんでした。この場合、切り分けに使えるログファイルは何になるのでしょうか? 試したのは5回連続でエラー画面をだして、なにかヒントになるものがでていないか、の確認でした。
otn

2020/08/26 15:34 編集

エラーログファイル名は設定次第で変わりますが、デフォルトだと error_log です。 時刻が付いているので、行を特定して追記してください。 わざわざ聞くと言うことは、error_log というファイルが無い??
otn

2020/08/26 15:33

2020/08/26 23:56 の内容は質問本文に追記した方が良い。
hatpotfoot

2020/08/26 16:43 編集

ありがとうございます。 前に切り分けとして出したログがどれかわからなくなってしまったので、またエラーにしてみました。 出ていたのは下記のみでした。ログファイルはこれであっているでしょうか。 【 ssl_error_log】 [Thu Aug 27 01:19:29.123083 2020] [access_compat:error] [pid 18189:tid 140459338864384] [client ] AH01797: client denied by server configuration: /var/www/html/wp-login.php
otn

2020/08/26 16:41

ファイルは合ってますが、 > 時刻が付いているので、行を特定して追記してください。 と書いたのが通じなかったみたいですね。 1行残して削除してください。
otn

2020/08/26 16:55

うまく行った後で他の設定をいじってませんか? ver2.4で、mod_access_compat(v2.2互換) のモジュールが外れたような現象です。
hatpotfoot

2020/08/26 17:01

設定ファイルは.htaccessだけ編集していた認識です。 急で申し訳ありません。引き続き原因について調べていたところ、記述書式がApache/2.2になっているとわかりました。 Apache/2.4の書式で書き直したところ、記述有り無し、ともに正常動作に戻りました。 記述方法が正しくなかったために不安定な挙動だったとの認識でよろしいでしょうか?
hatpotfoot

2020/08/26 17:02

【正しく動作した記述】 <Files wp-login.php> Require all denied Require ip 自分のグローバルIPアドレス </Files>
otn

2020/08/26 17:25

そうですが、最初にうまく行ったと言うことは、mod_access_compat というv2.2互換の書き方が出来るモジュールが有効になっていたと思われます。そこを変更してない(最初から無効だった)とすると、最初にうまく行ったというのが間違いと言うことになってしまいますが。
hatpotfoot

2020/08/27 11:23

そうなんですか、、、、 すると、途中なにか勘違い(キャッシュを読んでいただけなど)かもしれません。もともと記述を入れた時点でエラーだったなど。 いろいろご教授いただきましてありがとうございます。 今後の作業も気をつけて行っていきます。m(_ _)m
guest

回答2

0

自己解決

【正しく動作した記述】
<Files wp-login.php>
Require all denied
Require ip 自分のグローバルIPアドレス
</Files>

投稿2020/08/27 11:26

hatpotfoot

総合スコア0

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

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

0

httpd.conf における、ドキュメントルートにあたるディレクトリの公開条件がどうなっているか、
ドキュメントルートに .htaccess があるなら、その記述内容はどうか、
そもそもドキュメントルートにWordPress一式を展開する時のオーナーやグループによって、Apache httpdからアクセスできないような権限設定になっていないか。

投稿2020/08/26 14:46

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

hatpotfoot

2020/08/27 11:26

ありがとうございます。m(_ _)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問