静的Djangoファイルを提供するようにApacheを設定するのに問題があります。共有ホストを使用していて、Apache構成ファイルにアクセスできません。すべての例Alias
はApache構成ファイルで使用されているため、.htaccessのmod_rewriteを使用してそれを行う方法を理解しようとしています。
私のsetup.pyは次のようになります:
STATIC_ROOT = '/home2/usr/public_html/mydjangoproject/static'
STATIC_URL = '/static/'
私はpython manage.py collectstatic
ターミナルで実行し、それがそのことを実行したので、現在/public_html/mydjangoproject/static
、サブフォルダーadmin
とそのコンテンツが含まれているフォルダーがあります。
ここのドキュメントにあるように、mod_wsgiを経由するのではなく、静的ファイルのみを提供するようにapacheを構成しようとしています。
django.contrib.staticfilesを使用して管理ファイルを処理することを強くお勧めします(前のセクションで概説したWebサーバーとともに。これは、collectstatic管理コマンドを使用してSTATIC_ROOTに静的ファイルを収集し、Webサーバーを構成して提供することを意味します。 STATIC_URLのSTATIC_ROOT)
これを行うために、以下に示すように、.htaccessファイルに3行目を追加しました。このファイルはにあります/home2/usr/public_html/mydjangoproject/.htaccess
私の.htaccessファイル:
AddHandler fcgid-script .fcgi
RewriteEngine On
RewriteRule /static/ /home2/usr/public_html/mydjangoproject/static
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L]
末尾のスラッシュがある場合とない場合で3行目を試しましたが、効果はありませんでした。
www.mysite.com/mydjangoproject/static/にアクセスすると、500内部サーバーエラーが発生します。同様に、管理ページはまだ必要なcssファイルを取得していません。どうしたの?