フォーラムへの返信

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • フォーラム: プラグイン
    返信が含まれるトピック: au端末でのktai sytleの次ページが404になります

    かなり前の記事に返信します。

    当方でも同様の現象が起こったため以前調べたところ、/%7Eユーザ名/でアクセスした場合にそれが/~ユーザ名/と置き換わってブラウザ側でアクセスされても、php側の$_SERVER[‘REQUEST_URI’]のデータとしては/%7Eのままで残っており、この場合にWordPress側が404を発行するということになるようです。携帯に限らず、通常のブラウザでのアクセスでも同様です。

    本来ならWordPress本体で修正したほうが適切なのかもしれませんが、とりあえずの急場しのぎで/%7Eを/~に置換する処理(これで動作します)を強引にindex.phpファイルへ入れて対応していたところ、WordPressの更新時にファイルの上書きでこの記述が削除されたのかいつの間にか動作しなくなっていましたのでプラグイン化してみました。(ApacheのRewriteRuleでの対応も試しましたがうまく設定できませんでした)。

    <?php
    /*
    Plugin Name: REQUEST_URI Fix
    Description: URIの先頭が/~でなく/%7Eでアクセスした際に正しくアクセスできなくなるのを$_SERVER['REQUEST_URI']で/~と置換することで解決します。
    Version: 0.0.1
    */
    
    function requrl_fix() {
      global $_SERVER;
    
      $_SERVER["REQUEST_URI"]=preg_replace('#^/%7e#i', '/~', $_SERVER["REQUEST_URI"]);
    }
    add_action('init', 'requrl_fix');
    ?>

    どの程度正しいのか不明ですが、これでアクセスはできています。

1件の返信を表示中 - 1 - 1件目 (全1件中)