0

ReviewBoardをインストールしようとしていますが、サイトと機能にアクセスできる限り、すべてうまくいったようです。

ただ、どういうわけかスタイルシートが貼られていないように見えるのが不思議です。

アクセスできないフォルダのアクセス許可の問題か、Apacheのセットアップエラーが原因である可能性があります。

これを引き起こした可能性のあるApache構成はありますか?

ReviewBoardだけでなく、同様の問題を経験した人はいますか?

詳細情報:Apacheがスタイルシートのリクエストを受信して​​いるようです

  • [2009年5月20日:10:00:35 +0100] "GET /reviewboard/media/rb/css/common.css?1242747706 HTTP / 1.1" 404 2512
  • [2009年5月20日:10:00:35 +0100] "GET /reviewboard/media/rb/css/ie_hacks.css?1242747706 HTTP / 1.1" 404 2514

  • [2009年5月20日:10:00:36 +0100] "GET /reviewboard/media/rb/js/csshover2.htc?1242747706 HTTP / 1.1" 404 2514

  • [2009年5月20日:10:00:36 +0100] "GET /reviewboard/media/rb/js/pngfix.htc?1242747706 HTTP / 1.1" 404 2511

編集:アクセスログを見ると、パスはreviewboard / htdocs / media / rb / css / *である必要があるため、CSSのGETは実際には404-ingです(ただし、HTTP.confにはこれを処理すると想定したエイリアスがあります) 。

編集:.htaccessファイルには次のものが含まれています

<IfModule mod_expires.c>
  <FilesMatch "\.(jpg|gif|png|css|js|htc)">
    ExpiresActive on
    ExpiresDefault "access plus 1 year"
  </FilesMatch>
</IfModule>

<IfModule mod_deflate.c>
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/xml
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE application/javascript
  AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>

編集:

httpd.confセクションは次のようになります

<VirtualHost *:8080>
    ServerName FASKALLYRB
    DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/reviewboard/htdocs"

    # Error handlers
    ErrorDocument 500 /errordocs/500.html
    ErrorDocument 404 /errordocs/500.html

    # Serve django pages
    <Location "/">
        PythonPath "['C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/reviewboard/conf'] + sys.path"
        SetEnv DJANGO_SETTINGS_MODULE reviewboard.settings
        SetEnv PYTHON_EGG_CACHE "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/reviewboard/tmp/egg_cache"
        SetHandler mod_python
        PythonHandler django.core.handlers.modpython
        PythonAutoReload Off
        PythonDebug Off
        # Used to run multiple mod_python sites in the same apache
        PythonInterpreter reviewboard_reviewboard
    </Location>

    # Serve static media without running it through mod_python
    # (overrides the above)
    <Location "reviewboard/media">
        SetHandler None
    </Location>
    <Location "reviewboard/errordocs">
        SetHandler None
    </Location>

    <Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/reviewboard/htdocs">
        AllowOverride All
    </Directory>

    # Alias static media requests to filesystem
    Alias reviewboard/media "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/reviewboard/htdocs/media"
    Alias reviewboard/errordocs "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/reviewboard/htdocs/errordocs"
</VirtualHost>
4

2 に答える 2

0

おそらくhtdocs/mediaを指す「media」と呼ばれるレビューボードでシンボリックリンクを作成できます。

または:

  1. htdocs/mediaを..に移動します。
  2. または、レビューボードコードに移動して、URL生成コードを微調整します
  3. または、mod_rewriteがインストールされている場合は、リクエストを適切な場所にリダイレクトできます
于 2009-05-20T10:56:23.753 に答える
0

LocationディレクティブとAliasディレクティブのURLは相対的なものにすることはできず、先頭にスラッシュが必要です。したがって、「/ reviewboard/.......」を使用する必要があります。

FWIW、PythonInterpreterディレクティブは、それに対するあなたのコメントがあなたがそう思っていることを示しているように見えるものには使用されていません。

# Used to run multiple mod_python sites in the same apache
PythonInterpreter reviewboard_reviewboard

アプリケーションは常に同じApacheインスタンス内で実行されます。PythonInterpreterが行うことは、実行する各Apacheサーバーの子プロセス内のどのPythonサブインタープリターを制御できるようにすることです。同じVirtualHostの下にあるすべてのmod_pythonでホストされているアプリケーションにデフォルトで同じサブインタープリターが使用されるため、実際には冗長です。各Apacheサーバーの子プロセスには、アプリケーションの複数のインスタンスがまだ存在することに注意してください。

于 2009-07-17T00:14:38.030 に答える