Pergunta

Eu tenho tentado instalar ReviewBoard e todos parece ter corrido bem, tanto quanto eu posso acessar o site e funcionalidade

No entanto, tenho estranheza onde nenhuma folha de estilo parece ser aplicado por algum motivo.

Eu suspeito que pode ser um problema de permissões em uma pasta que não pode acessar ou algum erro de configuração Apache que eu fiz.

Existe alguma configuração do Apache que poderia ter causado isso?

Alguém já teve problemas semelhantes não apenas para ReviewBoard?

Mais informações: Parece que Apache está a receber o pedido de Stylesheets

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

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

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

EDIT: Olhando para o acesso registra o GET para o CSS é realmente 404-ing como o caminho deve ser ReviewBoard / htdocs / media / rb / css / * (embora haja um alias na http.conf que assumi lidado com isso.

EDIT: O arquivo .htaccess contém

<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>

EDIT:

As secções httpd.conf olhares como este

<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>
Foi útil?

Solução

A URL para localização e Alias ??directivas não pode ser relativo e precisa de uma barra inicial. Assim, você deve estar usando '/ ReviewBoard /.......'.

FWIW, a directiva PythonInterpreter não é usado para o que o seu comentário contra ela parece indicar que você acha que ele faz.

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

A aplicação é sempre executado dentro da mesma instância do Apache. O que PythonInterpreter faz é permitir que você controlar quais sub interpretador Python dentro de cada processo filho do servidor Apache é executado. Na verdade, é redundante no seu caso, como a mesma sub intérprete é por padrão usado para todos mod_python aplicações hospedadas no mesmo VirtualHost. Note-se que ainda haverá várias instâncias da aplicação, sobre em cada um dos processos filho do servidor Apache.

Outras dicas

Você pode fazer um link simbólico em ReviewBoard chamada 'media' que aponta para htdocs / media talvez.

Como alternativa:

  1. move htdocs / media para ..
  2. ou ir para o código ReviewBoard e ajustar o código de geração de url
  3. ou se você tem mod_rewrite instalado, você pode redirecionar solicitações para o lugar certo
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top