2012-01-31 5 views
0

ApacheにDiazoテーマを適用するように設定しようとしていますが、処理チェーンが途中で停止して空のファイルが生成され、 (エラーが表示されるのは、コンフィグレーションにFilterChain THEMEが表示されている場合のみです。テーマを適用することに関連していると思います)。私は、ファイル/home/elmolino/buildout/src/djangolino-theme/theme.xslを生成するためにdiazocompileと私のrules.xmlをコンパイルし、ApacheでDiazoテーマを適用するときに「ドキュメントが空です」というエラーが発生する

まず:

はこれまでのところ、私は、次の手順を適用しています。

その後、私はこのように見えるように私のApacheの設定ファイルを更新:エラーがブラウザ

に表示され、「データが受信されていない」、私はその後、私のサイトのホームページにアクセスしようとすると

WSGIPythonHome /home/elmolino/buildout/env 
LoadModule transform_module /usr/lib/apache2/modules/mod_transform.so 
LoadModule filter_module /usr/lib/apache2/modules/mod_filter.so 

<VirtualHost *:80> 
ServerName elmolino.usecm.com 
ServerAdmin [email protected] 

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !/wsgi/ 
RewriteCond %{REQUEST_FILENAME} !/site_media/ 
RewriteCond %{REQUEST_FILENAME} !/static/ 
RewriteRule ^(.*)$ /wsgi/django.wsgi/$1 [QSA,PT,L] 

LogLevel info 
ErrorLog /home/elmolino/buildout/var/error_log 
CustomLog /home/elmolino/buildout/var/access_log common 

FilterDeclare THEME 
FilterProvider THEME XSLT resp=Content-Type $text/html 

TransformOptions +ApacheFS +HTML +HideParseErrors 
TransformSet /home/elmolino/buildout/src/djangolino-theme/theme.xsl 
# TransformCache /home/elmolino/buildout/src/djangolino-theme/theme.xsl /etc/apache2/theme.xsl 

# Paths to el molino site 
Alias /wsgi/ /home/elmolino/buildout/src/elmolino/apache/ 
<Directory /home/elmolino/buildout/src/elmolino/apache> 
    Options ExecCGI 
    SetHandler wsgi-script 
    FilterChain THEME 

    Order allow,deny 
    Allow from all 

    AuthType Basic 
    AuthName "ElMolino FrontEnd" 
    AuthUserFile /etc/apache2/authorization-users 
    Require valid-user 
</Directory> 

# serve media files 
Alias /site_media "/home/elmolino/buildout/var/media" 

# serve static files 
Alias /static "/home/elmolino/buildout/var/static" 
</VirtualHost> 

Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection without sending any data. 

エラーログは、次のメッセージが表示されます。

info [client 213.97.51.211] mod_wsgi (pid=32415, process='', application='elmolino.usecm.com|/wsgi/django.wsgi'): Loading WSGI script '/home/elmolino/buildout/src/elmolino/apache/django.wsgi'. 
error [client 213.97.51.211] mod_transform::libxml2_error: /home/elmolino/buildout/src/djangolino-theme/theme.xsl:1: 
error [client 213.97.51.211] mod_transform::libxml2_error: parser 
error [client 213.97.51.211] mod_transform::libxml2_error: error : 
error [client 213.97.51.211] mod_transform::libxml2_error: Document is empty\n 
error [client 213.97.51.211] mod_transform::libxml2_error: \n 
error [client 213.97.51.211] mod_transform::libxml2_error: ^\n 
error [client 213.97.51.211] mod_transform::libxml2_error: /home/elmolino/buildout/src/djangolino-theme/theme.xsl:1: 
error [client 213.97.51.211] mod_transform::libxml2_error: parser 
error [client 213.97.51.211] mod_transform::libxml2_error: error : 
error [client 213.97.51.211] mod_transform::libxml2_error: Start tag expected, '<' not found\n 
error [client 213.97.51.211] mod_transform::libxml2_error: \n 
error [client 213.97.51.211] mod_transform::libxml2_error: ^\n 
error [client 213.97.51.211] mod_transform: XSLT: Loading of the XSLT File has failed 

ヘルプは本当にappreciatですエド! Maarten

答えて

0

私がTransformCacheオプションを使用すると、動作するようです。私は変更したものを書き留めます(この解決策は私の現在の理解に基づいていますが、それはまだ正しくない可能性があります)。 TransformCacheを使用する場合、最初の引数はキャッシュされたファイルの名前です(この名前のファイルが作成されないため、実際にファイルとして使用されるかどうかは疑わしい).2番目の引数は入力ファイルの名前です。キャッシュファイルの名前をTransformSetに渡す必要があります。

TransformOptions +ApacheFS +HTML +HideParseErrors 
TransformSet /etc/apache2/elmolino.xsl 
TransformCache /etc/apache2/elmolino.xsl /home/elmolino/buildout/src/djangolino-theme/theme.xsl 
関連する問題