tDiary.org[tDiary-devel] base_url について

< Prev [Date] Next > < Prev [Thread] Next > Index by date Index by thread
koyasu です.

さくらウェブの場合,キャッシュサーバを通してアクセスすることになるので,
URL のサーバネーム部分はキャッシュサーバのホスト名が使われます.
ところが TDiary::Config の base_url メソッドは httpd が実際に動いてい
るホスト名使用するをため,実際にユーザが表示したい(キャッシュサーバの)
ホスト名と異なる結果を返します.

具体例として僕の場合を挙げますと,僕の使っているサーバのホスト名は
www90.sakura.ne.jp で,URL として使用したい(つまりキャッシュサーバの)
ホスト名は white.sakura.ne.jp です.
しかし,現在の base_url メソッドの実装の場合は www90 の方を返してきま
す.

このような問題を回避するために @options['base_url'] という変数を使って
添付のパッチのようにしてみました.
一行追加するだけの変更ですが,よろしければ取り込んで貰えないでしょうか.

======================================================
  子安 大士 <koyasu@cv.mech.eng.osaka-u.ac.jp>
======================================================
? tdiary_base_url.patch
Index: tdiary.rb
===================================================================
RCS file: /cvsroot/tdiary/core/tdiary.rb,v
retrieving revision 1.175
diff -u -r1.175 tdiary.rb
--- tdiary.rb	20 Jan 2004 15:35:11 -0000	1.175
+++ tdiary.rb	29 Jan 2004 10:51:15 -0000
@@ -438,6 +438,7 @@
 		end
 	
 		def base_url
+			return @options['base_url'] if @options['base_url']
 			return '' unless ENV['SCRIPT_NAME']
 			if ENV['HTTPS']
 				port = (ENV['SERVER_PORT'] == '443') ? '' : ':' + ENV['SERVER_PORT'].to_s