サポート » プラグイン » docomoでの接続が異常に遅い

  • 解決済 dublab

    (@dublab)


    Angsuman’s Authenticated WordPress Plugin – Password Protection
    http://blog.taragana.com/index.php/archive/angsumans-authenticated-wordpress-plugin-password-protection-for-your-wordpress-blog/
    を入れ、IDとPWで制限をしていますが、携帯で見るとdocomoにクッキーがないためか、
    docomoだけがログイン後にサイトが表示されるまで、数分かかるような現象が起きています。
    他のキャリアでは問題なく表示できています。

    他に入れているプラグインは
    Contact Form 7
    Gigs Calendar
    viewMobile
    になります。

    Ktai Styleを使いたかったのですが、Angsuman’s Authenticated WordPress Pluginと相性が悪いのか、
    「Could not open the login page because custom WP_PLUGIN_DIR set.」
    というエラーメッセージが出て表示できません。

    Angsuman’s Authenticated WordPress Pluginを使いながら、Ktai Styleの利用は可能でしょうか?

    また他にこちら側で発行したID、PWでサイトのアクセスを制限するdocomoで使えるプラグインなどありましたら、ご教授ください。

    よろしくお願い致します。

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

    (@lilyfan)

    Ktai Style 作者です。

    Ktai Styleを使いたかったのですが、Angsuman’s Authenticated WordPress Pluginと相性が悪いのか、
    「Could not open the login page because custom WP_PLUGIN_DIR set.」
    というエラーメッセージが出て表示できません。

    このメッセージは、WordPress 2.6 以降で、wp-config.php の編集により、プラグインの格納位置をデフォルトである wp-content/plugins 以外の場所に設定しているときに出てきます。この場合、附属ドキュメントを参考にして、ktai_style/wp-load.php を編集する必要があります。

    もし、標準の位置から動かしていない場合は、my-hacks.php 等どこかのファイルで WP_PLUGIN_DIR を再定義している可能性があります。Angsuman’s Authenticated WordPress Plugin が原因の可能性は少ないはずですが、このプラグインを停止すると成城動作しますか??

    また他にこちら側で発行したID、PWでサイトのアクセスを制限するdocomoで使えるプラグインなどありましたら、ご教授ください。

    サイト全体で Basic 認証を行なわせる方法があります。

    トピック投稿者 dublab

    (@dublab)

    ご回答ありがとうございます。

    Angsuman’s Authenticated WordPress Pluginには、IDとPWを数千件登録しているのですが、プラグインを停止してもその登録しているデータには支障はないでしょうか?

    サイト全体で Basic 認証を行なわせる方法

    こちらを試して動いたのですが、ログインに失敗すると、
    「Bad Password」のメッセージが出て、その後同じログインのURLに行っても「Bad Password」のままになってしまいます。
    その際はどのようにすれば、またログイン画面を表示できるようになりますか?

    よろしくお願い致します。

    モデレーター IKEDA Yuriko

    (@lilyfan)

    Angsuman’s Authenticated WordPress Pluginには、IDとPWを数千件登録しているのですが、プラグインを停止してもその登録しているデータには支障はないでしょうか?

    それは当該プラグインの Readme をご確認願います。ID, パスワードをどう保管しているか、停止時にそれらをクリアする実装なのかどうかによります。気になる場合は、データベースおよびサーバー上のファイルをすべてバックアップしてからプラグインを停止させてください。

    一応、WordPress のアップデートを行う場合は、すべてのプラグインを停止させることが推奨されているため、プラグインを停止するだけで数千件ものデータを削除するような実装になっていることは、あまり考えられません。
    万が一そういう実装になっているならば、それは Angsuman’s Authenticated WordPress Plugin の作りが凶悪と言えるわけで、使い続けるべきでない、とも言えます。

    「Bad Password」のメッセージが出て、その後同じログインのURLに行っても「Bad Password」のままになってしまいます。
    その際はどのようにすれば、またログイン画面を表示できるようになりますか?

    Bad Password のとき、HTTP ヘッダとして 401 を送信してないのがよくなさそうですね。
    コードを以下のようにしてみてください。

    <?php
    global $wpja_site_pass;
    $wpja_site_pass = array(
      'user_1' => 'pass_1',
      'user_2' => 'pass_2',
    );
    
    function wpja_force_basic_auth() {
      if (! defined('WP_USE_THEMES')) {
        return;
      }
      global $wpja_site_pass;
      if (isset($_SERVER['PHP_AUTH_USER']) && array_key_exists($_SERVER['PHP_AUTH_USER'], $wpja_site_pass) && strcmp($wpja_site_pass[$_SERVER['PHP_AUTH_USER']], $_SERVER['PHP_AUTH_PW']) === 0) {
        return;
    } else {
        header('WWW-Authenticate: Basic realm="Please Enter Site Password"');
        header('HTTP/1.0 401 Unauthorized');
        if (! isset($_SERVER['PHP_AUTH_USER'])) {
            echo "Authorization Required";
        } else {
            echo "Bad Password";
        }
        exit;
      }
    }
    add_action('init', 'wpja_force_basic_auth');
    ?>
    トピック投稿者 dublab

    (@dublab)

    lilyfanさん、ありがとうございます。

    Angsuman’s Authenticated WordPress Pluginのデータの件についてもありがとうございました。

    <?php
    global $wpja_site_pass;
    $wpja_site_pass = array(
    ‘user_1’ => ‘pass_1’,
    ‘user_2’ => ‘pass_2’,
    );

    function wpja_force_basic_auth() {
    if (! defined(‘WP_USE_THEMES’)) {
    return;
    }
    global $wpja_site_pass;
    if (isset($_SERVER[‘PHP_AUTH_USER’]) && array_key_exists($_SERVER[‘PHP_AUTH_USER’], $wpja_site_pass) && strcmp($wpja_site_pass[$_SERVER[‘PHP_AUTH_USER’]], $_SERVER[‘PHP_AUTH_PW’]) === 0) {
    return;
    } else {
    header(‘WWW-Authenticate: Basic realm=”Please Enter Site Password”‘);
    header(‘HTTP/1.0 401 Unauthorized’);
    if (! isset($_SERVER[‘PHP_AUTH_USER’])) {
    echo “Authorization Required”;
    } else {
    echo “Bad Password”;
    }
    exit;
    }
    }
    add_action(‘init’, ‘wpja_force_basic_auth’);
    ?>

    で「Bad Password」の問題はなくなりましたが、一度ログインすると、ブラウザーを閉じてまた開くとログインできてしまいます。
    ブラウザーを終了し、また起動した際にはログインが必要となりますが、

    • サイトを閉じる
    • ブラウザーを閉じる

    上記の場合、再度認証を行わせる方法はありますでしょうか。

    よろしくお願い致します。

    トピック投稿者 dublab

    (@dublab)

    上記の追加ですが、ログイン後に表示されるサイト内にログアウトのようなシステムのリンクをつけ、それをクリックすると再度認証を行わせるようなことは可能でしょうか?

    よろしくお願い致します。

    トピック投稿者 dublab

    (@dublab)

    BASIC認証についての知識が不足していたため、追加の質問をしましたが、自己解決しました。
    ログアウトなどの概念はないのですね。
    また、BASIC認証の導入により、docomoでの接続の問題も解決されました。

    ありがとうございました。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • トピック「docomoでの接続が異常に遅い」には新たに返信することはできません。