- 追加された行はこの色です。
- 削除された行はこの色です。
*ポート80以外の場合のRSS [#v935e49e]
-ページ: BugTrack
-投稿者: [[nie]]
-優先順位: 低
-状態: 提案
-カテゴリー: 本体バグ
-投稿日: 2003-08-12 (火) 09:47:23
-バージョン: 1.3.5
**メッセージ [#n3f3ae02]
ポート80以外でhttpを上げている場合、たとえば
http://www.example.com:8080/pukiwiki.php
になるのが本来だと思いますが、RSS上のURLは
http://www.example.com/pukiwiki.php
になっています。
----
- 1.4でも同様です。xreaで:8080に設置されたPukiWikiは全滅かと。 -- [[ぱんだ]] &new{2003-08-20 (水) 11:17:47};
- (1.3.5)サーバ変数HTTP_HOSTが使えるなら、rss.phpの最初で
define('HTTP_HOST',$HTTP_SERVER_VARS['HTTP_HOST']);
とでもしておいて、SERVER_NAMEを全てHTTP_HOSTに置換するとうまくいくと思います。 -- [[ぱんだ]] &new{2003-08-20 (水) 11:17:47};
- (1.4)だと、rss.inc.php/rss10.inc.php
$self = preg_match('#^https?://#',$script) ?
$script.'?' :
($_SERVER['SERVER_PORT'] == 443 ? 'https://' : 'http://').
$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?';
というのを考えていますが、たぶん決定打ではありません。 -- [[ぱんだ]] &new{2003-08-20 (水) 11:17:47};
- この件に限らず、pukiwiki.phpのabsolute-uriを決定するうまい方法があればいいなと思うんですが、(cgi版はpathの取得が難しいので除外)、
($_SERVER['SERVER_PORT'] == 443 ? 'https://' : 'http://').
$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
で''うまくいかない''ことはあるのかな… -- [[ぱんだ]] &new{2003-08-20 (水) 11:17:47};
- init.php同様、きっちり作るとすれば… -- [[ぱんだ]] &new{2003-08-20 (水) 16:16:38};
// scheme
$script = ($_SERVER['SERVER_PORT'] == 443 ? 'https://' : 'http://');
// host
$script .= $_SERVER['SERVER_NAME'];
// port
$script .= ($_SERVER['SERVER_PORT'] == 80 ? '' : ':'.$_SERVER['SERVER_PORT']);
// path
$path = $_SERVER['SCRIPT_NAME'];
if ($path{0} != '/')
{
if (!array_key_exists('REQUEST_URI',$_SERVER) or $_SERVER['REQUEST_URI']{0} != '/')
{
die_message("please set '\$script' in ".INI_FILE);
}
$parse_url = parse_url($script.$_SERVER['REQUEST_URI']);
if (!isset($parse_url['path']) or $parse_url['path']{0} != '/')
{
die_message("please set '\$script' in ".INI_FILE);
}
$path = $parse_url['path'];
}
$script .= $path;
-パッチを添付します。&ref(442.diff); これでどうでしょうか。 -- [[ぱんだ]] &new{2003-09-11 (木) 12:59:39};
-1.4向けのパッチを添付します。&ref(442.diff); これでどうでしょうか。 -- [[ぱんだ]] &new{2003-09-11 (木) 12:59:39};
#comment