SERVER_PORTが443だとリンクが必ず https になってしまう (ハードコーディング)

  • ページ: BugTrack
  • 投稿者: hiroki?
  • 優先順位: 低
  • 状態: 完了
  • カテゴリー: 本体バグ
  • 投稿日: 2003-05-22 (木) 12:10:09
  • バージョン: 1.3.4
  • リリース予定バージョン: 1.5.2

メッセージ

apacheの設定によるものだと思いますが、SERVER_PORTが443だと pukiwikiページ内のリンクがすべて"https://サーバ名:443/なんたら"になります。 pukiwiki側で"http://サーバ名/なんたら"というリンクにしたかったので、init.phpの

     $script = (getenv('SERVER_PORT')==443?'https://':('http://')).getenv('SERVER_NAME').(getenv('SERVER_PORT')==80?'':(':'.getenv('SERVER_PORT'))).getenv('SCRIPT_NAME');

       $script = (getenv('SERVER_PORT')==443?'http://':('http://')).getenv('SERVER_NAME').(getenv('SERVER_PORT')==80?'':'').getenv('SCRIPT_NAME');

にして逃げました。


  • 全くの環境依存でしょうかね…?対策しておく価値はある気がします。1.4.4ではfunc.phpの537行目あたりでしょうか…? -- Ratbeta? 2004-09-20 (月) 11:16:42
  • 片付けるために、問題点を明確にしましょう。ひとつは、http://~ というURLで最初にアクセスしたっていうのに、表示されたページに埋め込まれているリンクが全て http's'' になってしまうのはどういうこっちゃい!ということですね。うーんあともう一つくらいあったような・・・ -- henoheno 2004-09-20 (月) 11:44:14
  • ああ、それと、port 443 が https に対応しているとは限らない(設定依存)なのに、それを決め打ちしているのはおかしいですね。他にもあったような・・・ -- henoheno 2004-09-20 (月) 11:45:09
  • そうなるとfunc.phpの539行目、ポート80ならhttp://ってのも怪しくなります(^^; -- Ratbeta? 2004-09-20 (月) 11:49:05
    • そうかもです。8080などでちゃんと動くのか、なども。 -- henoheno
  • 思い出しました。以前いただいたメール(1.3系のユーザーの方)の中に、「SSLとBasic認証を組み合わせた場合、http://example.com/wiki/ に :443 が自動で挿入されるため、443を挿入せずにアクセスした場合に認証が2回要求される様です」というものがありました。気をつけるべきはこの位ですね。 -- henoheno 2004-09-20 (月) 12:02:10
  • このあたりを想定に入れつつ、再設計する必要があるでせう。 -- henoheno 2004-09-20 (月) 12:04:25
  • 2ちゃんねるのPukiWikiスレにも関連する問答がありました。 -- henoheno 2004-09-20 (月) 18:20:46
    • http://pc5.2ch.net/test/read.cgi/php/1084907353/278-288
      • "リンクがすべて絶対指定になっているので、LAN内からはろくに使えません。"
      • "$script='pukiwiki.php'と書いたら、リンクが相対urlになりました。これで、外からも中からも見られそうです。"
      • "確か相対指定した場合にはtrackbackやrefere, rss など、絶対指定のURLを吐くプラグインで問題が出る記憶があるので、もし使う場合は一応、注意な。"
    • 相対指定云々の話の元ネタは、これ→BugTrack/481 -- にぶんのに 2004-09-20 (月) 20:25:02
    • 相対/絶対 URI 関連: BugTrack2/213 -- 2009-06-27 (土) 22:00:39
  • 関連:BugTrack/610 -- Ratbeta? 2004-10-10 (日) 17:19:40
  • ここに投稿していいのかわからないのですが、関連していそうなので書きます。そして、激しく勘違いしてたらすいません
    TrackBack送信するときにHTTPSの状態から送信しても相手に送信するアドレスはHTTPに変換とかってできますか?自分で認証・投稿するときにはHTTPSでアクセスしてるが、TrackBackはHTTPで送信したい。 -- 2004-11-12 (金) 01:14:28
  • 関連: BugTrack2/299 -- 2008-03-06 (木) 18:37:22
  • 関連: BugTrack2/124 -- 2008-12-12 (金) 21:16:55
  • 対応しました commit:87416fbe41 -- umorigu 2017-09-04 (月) 03:12:24


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-09-04 (月) 03:12:56
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.204 sec.

OSDN