質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

830閲覧

djangoの{% load static %}がそのままページに表示される

teddy1121

総合スコア44

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/06/20 03:28

編集2022/06/20 04:50

前提

よろしくお願いします。
現在、Windows11 +python+ django + apacheで社内サーバーを立てようとしています。
python, django, apacheのインストールはそれぞれできたようです。
バージョンはそれぞれ、
Windows11pro
python:3.10.5
django:4.0.5
apache:2.4.52
※すべて64bit
※mood_wsgiも導入しています。

実現したいこと

djangoで作成したwebアプリを社内サーバーで公開したいです。
クライアントは固定IPではない複数台です。

発生している問題・エラーメッセージ

djangoで作成したアプリについてはvidualstudioのローカル環境ではちゃんと動いています。
ところが、apacheを通して公開したとき、staticにあるファイルを何も読み込みません。
それどころか、{% load static %}や{% csrf_token %}の文字もそのまま画面に表示されます。
色々調べましたが、cssを読み込まないなどの説明はあるのですが、この現象について書いてあるサイトは見つけられませんでした。
ZAMPPでapacheは正常に立ち上がります。
素人考えでdjangoがちゃんと動いていないのかなと思ったのですが、解決の手立てを見つけられませんでした。

※以下コードはどこを載せればいいかわからなかったのでご指摘ください。

該当のソースコード

httpd.conf

1 2 3Define SRVROOT "C:/xampp/apache" 4 5ServerRoot "C:/xampp/apache" 6 7Listen 80 8 9LoadModule access_compat_module modules/mod_access_compat.so 10LoadModule actions_module modules/mod_actions.so 11LoadModule alias_module modules/mod_alias.so 12LoadModule allowmethods_module modules/mod_allowmethods.so 13LoadModule asis_module modules/mod_asis.so 14LoadModule auth_basic_module modules/mod_auth_basic.so 15LoadModule authn_core_module modules/mod_authn_core.so 16LoadModule authn_file_module modules/mod_authn_file.so 17LoadModule authz_core_module modules/mod_authz_core.so 18LoadModule authz_groupfile_module modules/mod_authz_groupfile.so 19LoadModule authz_host_module modules/mod_authz_host.so 20LoadModule authz_user_module modules/mod_authz_user.so 21LoadModule autoindex_module modules/mod_autoindex.so 22LoadModule cgi_module modules/mod_cgi.so 23LoadModule dav_lock_module modules/mod_dav_lock.so 24LoadModule dir_module modules/mod_dir.so 25LoadModule env_module modules/mod_env.so 26LoadModule headers_module modules/mod_headers.so 27LoadModule include_module modules/mod_include.so 28LoadModule info_module modules/mod_info.so 29LoadModule isapi_module modules/mod_isapi.so 30LoadModule log_config_module modules/mod_log_config.so 31LoadModule cache_disk_module modules/mod_cache_disk.so 32LoadModule mime_module modules/mod_mime.so 33LoadModule negotiation_module modules/mod_negotiation.so 34LoadModule proxy_module modules/mod_proxy.so 35LoadModule proxy_ajp_module modules/mod_proxy_ajp.so 36LoadModule rewrite_module modules/mod_rewrite.so 37LoadModule setenvif_module modules/mod_setenvif.so 38LoadModule socache_shmcb_module modules/mod_socache_shmcb.so 39LoadModule ssl_module modules/mod_ssl.so 40LoadModule status_module modules/mod_status.so 41LoadModule version_module modules/mod_version.so 42 43LoadModule wsgi_module modules/mod_wsgi.so 44 45<IfModule unixd_module> 46 47User apache 48Group apache 49 50</IfModule> 51 52ServerAdmin test@test 53 54ServerName localhost:80 55 56<Directory /> 57 AllowOverride none 58 Require all denied 59</Directory> 60 61DocumentRoot "C:/onlineApp/config/backend/templates/backend" 62<Directory "C:/onlineApp/config/backend/templates/backend"> 63 64 Options Indexes FollowSymLinks Includes ExecCGI 65 66 AllowOverride All 67 68 Require all granted 69</Directory> 70 71<IfModule dir_module> 72 DirectoryIndex index.php index.pl index.cgi index.asp index.shtml index.html index.htm \ 73 default.php default.pl default.cgi default.asp default.shtml default.html default.htm \ 74 home.php home.pl home.cgi home.asp home.shtml home.html home.htm 75</IfModule> 76 77<Files ".ht*"> 78 Require all denied 79</Files> 80 81ErrorLog "logs/error.log" 82 83LogLevel warn 84 85<IfModule log_config_module> 86 87 LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined 88 LogFormat "%h %l %u %t \"%r\" %>s %b" common 89 90 <IfModule logio_module> 91 92 LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio 93 </IfModule> 94 95 CustomLog "logs/access.log" combined 96</IfModule> 97 98<IfModule alias_module> 99 100 ScriptAlias /cgi-bin/ "C:/xampp/cgi-bin/" 101 102</IfModule> 103 104<IfModule cgid_module> 105 106</IfModule> 107 108<Directory "C:/xampp/cgi-bin"> 109 AllowOverride All 110 Options None 111 Require all granted 112</Directory> 113 114<IfModule headers_module> 115 116 RequestHeader unset Proxy early 117</IfModule> 118 119<IfModule mime_module> 120 121 TypesConfig conf/mime.types 122 123 124 AddType application/x-compress .Z 125 AddType application/x-gzip .gz .tgz 126 127 AddHandler cgi-script .cgi .pl .asp 128 129 AddType text/html .shtml 130 AddOutputFilter INCLUDES .shtml 131</IfModule> 132 133<IfModule mime_magic_module> 134 135 MIMEMagicFile "conf/magic" 136</IfModule> 137 138Include conf/extra/httpd-mpm.conf 139 140Include conf/extra/httpd-autoindex.conf 141 142Include conf/extra/httpd-languages.conf 143 144Include conf/extra/httpd-userdir.conf 145 146Include conf/extra/httpd-info.conf 147 148Include conf/extra/httpd-vhosts.conf 149 150Include "conf/extra/httpd-proxy.conf" 151 152Include "conf/extra/httpd-default.conf" 153 154Include "conf/extra/httpd-xampp.conf" 155 156<IfModule proxy_html_module> 157Include conf/extra/proxy-html.conf 158</IfModule> 159 160Include conf/extra/httpd-ssl.conf 161 162<IfModule ssl_module> 163SSLRandomSeed startup builtin 164SSLRandomSeed connect builtin 165</IfModule> 166 167 168AcceptFilter http none 169AcceptFilter https none 170 171<IfModule mod_proxy.c> 172<IfModule mod_proxy_ajp.c> 173Include "conf/extra/httpd-ajp.conf" 174</IfModule> 175</IfModule> 176 177#以下が主にネットなどで見て追加した部分 178LoadFile "C:/Python/python310.dll" 179LoadModule wsgi_module "C:/Python/lib/site-packages/mod_wsgi/server/mod_wsgi.cp310-win_amd64.pyd" 180WSGIPythonHome "C:/Python" 181 182WSGIScriptAlias /config /C:/onlineApp/config/config/wsgi.py 183WSGIPythonPath "C:/Python/Lib/site-packages" 184 185Alias /static/ "C:/onlineApp/config" 186<Directory "C:/onlineApp/config"> 187 Require all granted 188</Directory> 189 190### 試したこと 191 192python,django,apacheの入れ直し。 193各種サイト(探しすぎてどれと言えないです)で調べたもの。 194※触りすぎてごちゃごちゃになったらすべて再インストールしています。 195 196apacheは初めて触ったため初歩的なミスなどしているかもしれませんが皆さまのお知恵をお貸しください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

AbeTakashi

2022/06/20 03:33

Apacheの設定が書かれてないと第三者はアドバイスのしようがないと思います。mod_wsgiは導入とは書いてますが、それをApacheの設定のLoadModuleでmod_wsgiを読み込んでますか? その辺を何もしてないならそんな挙動になるのでは?とは思いますが。ということで、まずは現状のApacheの設定を質問文に追記されることをオススメします。
teddy1121

2022/06/20 04:53

お忙しい中ご指摘ありがとうございます。 httpd.confを記載させて頂きました。※ここの字数制限に引っかかったようなのでコメントアウト部分は削除しました。 mod_wsgiはご覧いただけるような形では設定しています。 ここが間違っているのでしょうか? またご回答いただけたら幸いです。
AbeTakashi

2022/06/20 05:54 編集

XAMPP環境なんですね。質問文にもありましたが、(ZAMPPと書いてるので)見逃していました。その要素はWindowsだと重要な要素なので、目立つ場所にしっかり書いた方がいいと思います。 参考) https://arakan-pgm-ai.hatenablog.com/entry/2020/07/13/000000 このサイトを見るに、環境変数だの他にも色々要素があるようなので、現状の環境はなるべく詳細に書いた方がいいと思います。あと、Apacheのエラーログに何しかしら情報が出てるかもしれないので、そちらも必要に応じて確認及び質問文に追記されるといいかと思います。 たまたま私も先日、Linux上にてDjangoのセットアップをしていたのですが、あっという間に終わりました。Windows(特にXAMPP)だとDjangoの環境構築がかなり厳しそうだなと感じました。DockerなりWSLなりを使ってLinuxに近い環境でセットアップした方が、あとあとは楽かもしれません。
teddy1121

2022/06/20 06:44

AbeTakashiさんご回答ありがとうございます。私もかなり探していたのですが、教えて頂いたページの内容がドンピシャでした。 結果、{% load static %}の表示がなくなりdjangoとアパッチがつながったようです。 自分がサイトを元に変更したのは、 1.環境変数の追加 2.WSGIApplicationGroup %{GLOBAL}の追加 3.WSGIScriptAlias /config "C:/onlineApp/config/config/wsgi.pyをWSGIScriptAlias / "C:/onlineApp/config/config/wsgi.pyに変更 今回は1と3が原因だったと思われます。やはりパスが通ってなかったのですね… 途中までubuntuで作っていたのですが、会社の都合でどうしてもaccessデータベース(.accdb)に接続しなければいけなかったため急遽切り替えました。 あとはstaticファイルのパスなどを弄れば大丈夫そうです。 貴重なお時間を使っていただきありがとうございました!
guest

回答1

0

自己解決

結論:apacheとdjangoの間でパスが通っておらず連携していなかった。

https://arakan-pgm-ai.hatenablog.com/entry/2020/07/13/000000

上記サイトのようにwindowsの環境設定とhttpd.confの中の間違っていた部分
WSGIScriptAlias /config "C:/onlineApp/config/config/wsgi.py

WSGIScriptAlias / "C:/onlineApp/config/config/wsgi.pyに変更。
アプリ名がいらなかった。

投稿2022/06/20 06:52

teddy1121

総合スコア44

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問