質問箱/5121

カテゴリエラー・トラブル
サマリ日本語リンクの不具合 URLエンコード
バージョン1.4.7
投稿者のの
状態完了
投稿日2013-01-15 (火) 14:50:14

質問

[[英語の勉強]]
のようにリンクを作成すると、urlエンコードで
%E8%8B%B1%E8%AA%9E%E3%81%AE%E5%8B%89%E5%BC%B7
上記のようにエンコードされます。
本来ならこのリンク先は、下記のようになるはずですが、
http://サーバー名/?%E8%8B%B1%E8%AA%9E%E3%81%AE%E5%8B%89%E5%BC%B7

実際には、下記のように
%E8%8B%B1%E8%AA%9E%E3%81%AE%E5%8B%89%E5%BC%B7 の編集

http://サーバー名/?%25E8%258B%25B1%25E8%25AA%259E%25E3%2581%25AE%25E5%258B%2589%25E5%25BC%25B7
何故か二重にURLエンコードされてしまいます。
どこがおかしいのでしょうか?

サーバー引越し(coreserver.jp)で、データをそのままコピーして、pukiwiki.ini.php内のサーバー名の変更はしましたが、上記のようになってしまいました。ちなみに英語のみのページ名ではURLエンコードが働かないので問題ありませんでした。
質問箱/2051とも関連がありそうでしたが、私のレベルでは十分理解できていません。 今後もpukiwikiを使い続けたいと思っていますので宜しくお願い致します。

回答

  • 引越し前と引越し後で変わったのはそこだけですか?PHPのバージョンや設定など他が前とまったく同じで、引っ越したら急に症状が出ただとお手上げとしか -- 2013-01-15 (火) 16:21:42
  • 以前のPHPバージョンは5.2.5で、新しい方のPHPバージョンは5.2.5/5.3.8と記載されていました。PHPのバージョンが違うと挙動も変わる可能性があるんですね。参考になりました。ありがとうございます! -- のの 2013-01-15 (火) 16:40:19
  • [[英語の勉強]]のリンクを作成した時点のURLですでに化けているのか、続・質問箱/51のようにリンクのURLは正しくて飛ぶと変になるのか、どちらなんだろ? -- 2013-01-15 (火) 23:27:42
  • 正確には、英語の勉強?としてリンク先を開こうとすると、その時点で、”実際には、下記のように”以下のメッセージが出て、本来はあるはずのリンクの編集画面が出て来ません(この時点でのURLは http://サーバー名/?%25E8%258B%25B1%25E8%25AA%259E%25E3%2581%25AE%25E5%258B%2589%25E5%25BC%25B7)。そこに何か書き込んで保存しようとしても、保存されずにFrontPageに戻されます。しかし、実際にはページは既にあるので、 http://サーバー名/?%E8%8B%B1%E8%AA%9E%E3%81%AE%E5%8B%89%E5%BC%B7と手動でURLを明示してやると目的のページが表示されます。 -- のの 2013-01-15 (火) 23:49:45
  • リンク関連で何か改造しているとか、アップグレードとかの関係で違うバージョンのファイルを混ぜてるとかでないと2回もURLエンコードの処理を通るはずないと思いますけど。ディスク容量に空きがあるなら、いたずらされないようにリードオンリーか認証だけを変更したなるべく素に近い状態から比較して試していくのが地道ですけど確実そうです。(もししょっぱなからつまづくようなら、PHPの設定問題でほぼ確定でしょうし) -- 2013-01-16 (水) 01:22:29
  • そうですね。これを機に、一度最初からインストールしなおしてみます。また報告します。皆様、ありがとうございます! -- のの 2013-01-16 (水) 07:00:13
  • クリーンインストールをしてみたところ、ちゃんと動きました。Pukiwikiのものでなく、.htaccessに直接Basic認証を書く所で戸惑ってしまい時間がかかりました。こうすると、.htaccessファイルの記述が間違っているのかもしれないので再確認してみます。 -- のの 2013-01-21 (月) 18:31:41
  • .htaccessを確認しましたが、この問題ではありませんでした。pukiwiki.ini.php以外あまりいじらないのにどうしてだろう。少しずつ、設定ファイルを正常に動くものから上書きしてためしてみるかな。 -- のの 2013-01-21 (月) 18:56:16
  • pukiwiki.ini.phpを差し替えたら上手く動くようになりました。しかし、凍結解除がPasswordが違うと出てしまいます。パーミッションの間違いかと思っていますが、もう少し確認します。 -- のの 2013-01-21 (月) 19:12:37
  • PukiWiki/Install#e76fbfcf とか、dev:BugTrack/709 とか。マルチバイトをパスに使っているならファイル側保存時か送受信時で化けているとかも。unfreezeプラグインを見るに、パスが違うと言われるルートだとあんまりパーミッションは関係なさそうな気が。 -- 2013-01-21 (月) 21:47:27
  • pukiwiki.ini.phpをDiffしてみた結果、おかしくなる方は、L117$scriptのコメントアウトが削除されて有効化されていた、L120の$script_directory_indexの有効化、あとところどころバックスラッシュが円マークになっていた、L409の$auto_template_func=0になっていた、くらいでした。バックスラッシュでないのが問題だったのか!? -- のの 2013-01-22 (火) 09:45:31
  • ↑2 ありがとうございます!!今、md5化を再確認したら間違っていて、修正したら上手く動きました。結局この問題はpukiwiki.ini.phpの問題だったことがはっきりしました。差分は上記の通りですが、具体的には何が問題だったのか私には理解できていません。ありがとうございました。一応、この質問は完了として終了しますが、詳しい解説が出来る方、後学のため宜しくお願い致します。 -- のの 2013-01-22 (火) 10:04:20


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-01-22 (火) 10:06:26
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.243 sec.

OSDN