« OSQAの設定パラメータ類 | Main | OSQAのデータキャッシュがクリアされない »

2011.05.30

VirtualHostを設定せずにOSQAを動かしてみる

OSQA の設定サンプル(Apache用)では、VirtualHostを使って、別のポート番号を・・・って感じになっています。ただ、使用するポートをあまり増やしたくないと言うこともあり、VirtualHostを使用せずに、他のアプリケーション(Trac/Subversionなど)と共存させるように設定を行ってみました(アプリケーションのURLとしては、http://servername/osqa/ を使用するように)。

/etc/httpd/conf.d/osqa.conf

WSGIPythonEggs /var/www/.python-eggs
Alias /osqa/m/ /opt/OSQA/forum/skins/
Alias /osqa/upfiles/ /opt/OSQA/forum/upfiles/
<Directory /opt/OSQA>
  Order allow,deny
  Allow from all
</Directory>
WSGIScriptAlias /osqa /opt/OSQA/osqa.wsgi

/opt/OSQA/settings_local.py(以下の2行の内容を確認)

APP_URL = 'http://servername'
FORUM_SCRIPT_ALIAS = 'osqa/'

Apacheを再起動。とりあえず、http://servername/osqa/ でアクセス可能なことを確認。ただ、一部リンク切れが発生してしまっているところがある模様。出力されたソースコードや、Apacheのアクセスログを確認してみると、

・アップロードしたファイル類(今回アップしたのはトップページ左上に表示されるロゴ画像ファイル)のURLが、/upfiles/... となってしまっている(本当は、/osqa/upfiles/... となって欲しい)。
・一部のファイルへのリンクが、/m/... となってしまっている(本当は、/osqa/m/... となって欲しい)。

といった感じ。いずれも内容としては同じような感じのもので、ApacheにAliasを追加することで回避可能ではあるのですが、他のアプリケーションと重なってしまう可能性が否定できない(もっとも、私が使っている範囲では重なることはないのですが)ところなので、生成されるリンクURLが正しくなるようにして欲しいところ。

・・・と思って調べてみると、アップロードのファイルに関しては UPFILES_ALIAS のパラメータの値が /upfiles/ のままになっていることが原因の模様。管理ページの「ファイルアップロードの設定」画面から、『アップロードされたエイリアスをファイル』の値を/osqa/upfiles/のように書き換えればOK。

ちなみに、

APP_URL = 'http://servername/osqa'
FORUM_SCRIPT_ALIAS = ''

という指定でも、問題なく動作するっぽい感じ。どっちが正しい設定なんでしょうかね??(APP_URLの値がキャッシュに影響しうるっぽい話もありますが・・・)

|

« OSQAの設定パラメータ類 | Main | OSQAのデータキャッシュがクリアされない »

Linux」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/3959/51797280

Listed below are links to weblogs that reference VirtualHostを設定せずにOSQAを動かしてみる:

« OSQAの設定パラメータ類 | Main | OSQAのデータキャッシュがクリアされない »