サポート » 使い方全般 » htaccessにて自分のIPアドレスを許可したい

  • 解決済 lyuna

    (@lyuna)


    WordPressにて会員制サイトを運営しております。
    そこでは会員以外はトップページ以外一切触れられない様にしています。
    その為、WordPressのフォルダの直下に以下の内容のhtaccessファイルを置いております。

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_URI} !^/index.php$
    RewriteCond %{REQUEST_URI} !^/wp-login.php$
    RewriteCond %{REQUEST_URI} !^.*themes/.*
    RewriteCond %{HTTP_COOKIE} !.*wordpress_logged_in.*$ [NC]
    RewriteRule . /index.php [R,L]
    </IfModule>
    
    # 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>

    しかしこのファイルを置いたときからアクセス解析プラグインやバックアッププラグインなど幾つかのプラグインが正常に動かない現象が起きました。
    Webなどで調べたところ、それらのプラグインが自身にアクセス出来ない為というのが原因かもしれないことがわかりました。

    そこで以下の様な特定のIPアドレスを許可する記述を知ったのですが、

    order deny,allow
    deny from all
    allow from xxx.xxx.xxx.xxx

    今のhtaccessファイルには『order deny,allow』『deny from all』は使っていないので、これを今あるhtaccessファイルにどう組み込んでいいのかわかりません。

    もしわかる方がいらっしゃるならば是非ご教授いただきたいです、
    よろしくお願いします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • モデレーター jim912

    (@jim912)

    アクセス解析プラグインは、分かりかねますが、バックアッププラグインは、おそらくWordPressの疑似cronを利用しているものと思われます。

    WordPressが自身にアクセスできないとというのは間違っていませんが、お考えになっているIPの許可ではありません。

    会員制のための .htaccessの記述ですが、WordPress のログインcookieがない場合は、index.php にリダイレクトさせるように記述されていますが、上記の疑似cron は、wp-cron.php に対してのアクセスとなり、このアクセス自体もリダイレクトされてしまっているはずです。

    まずは、この点を解消できるように .htaccess の記述を見直してみてください。

    トピック投稿者 lyuna

    (@lyuna)

    ご教授ありがとうございます!

    WordPress自体に擬似cronが存在していたのは知りませんでした。
    試しにwp-cron,phpにアクセス出来る様に修正した所、問題があったプラグインが全て正常に動きました。

    ずっと自己アクセスの問題だと思っていたので、私自身ではきっと解決出来なかったと思います。
    本当にありがとうございました。

    最後に一応そのhtaccessファイルを記しておきます。
    (最初に記述したモノの内容の一部に書き間違いがあったのでそこら辺も正しく修正しています)

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_URI} !^/index.php$
    RewriteCond %{REQUEST_URI} !^/wp-login.php$
    RewriteCond %{REQUEST_URI} !^/wp-cron.php$
    RewriteCond %{REQUEST_URI} !^.*themes/.*
    RewriteCond %{HTTP_COOKIE} !.*wordpress_logged_in.*$ [NC]
    RewriteRule . /index.php [R,L]
    RewriteRule ^index\.php$ - [L]
    </IfModule>
    
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「htaccessにて自分のIPアドレスを許可したい」には新たに返信することはできません。