yuikairi
@yuikairi

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

さくらのvpsでデプロイしたいが、アパッチがpythonを見つけられない

ど素人です!
今まではftpで静的ファイルのサイトを個人で運営していましたが、
この度djnagoを扱えるようになり、さくらのvpsでデプロイしたかったのですが、ImportError: No module named siteが
止まらず、どなたかご教授いただきたいです。。

解決したいこと

アパッチでImportError: No module named site
と出てきてしまいます。

サイトをデプロイする機能の実装中にエラーが発生しました。
解決方法を教えて下さい。

アパッチ、mod_wsgi、gunicorn、django4.2
,python3.10.11,さくらのvps

発生している問題・エラー

出ているエラーメッセージを入力
ImportError: No module named site
[Wed Jan 24 08:20:13.172368 2024] [core:warn] [pid 10277] AH00045: child process 10403 still did not exit, sending a SIGTERM
[Wed Jan 24 08:20:15.174522 2024] [core:warn] [pid 10277] AH00045: child process 10403 still did not exit, sending a SIGTERM
[Wed Jan 24 08:20:17.176692 2024] [core:warn] [pid 10277] AH00045: child process 10403 still did not exit, sending a SIGTERM
[Wed Jan 24 08:20:19.178897 2024] [core:error] [pid 10277] AH00046: child process 10403 still did not exit, sending a SIGKILL
[Wed Jan 24 08:20:20.179281 2024] [mpm_prefork:notice] [pid 10277] AH00169: caught SIGTERM, shutting down
[Wed Jan 24 08:20:20.189429 2024] [auth_digest:info] [pid 10277] AH01756: cleaning up shared memory

例)

NameError (uninitialized constant World)


または、問題・エラーが起きている画像をここにドラッグアンドドロップ

### 該当するソースコード
アパッチファイル
ソースコードを入力
355  #LoadModule wsgi_module modules/mod_wsgi.so
   356
   357  <VirtualHost *:8080>
   358      ServerAdmin webmaster@example.com
   359      DocumentRoot /var/www/html/myproject
   360      ServerName xxx-xxx.com
   361      ErrorLog /var/log/httpd/error.log
   362      CustomLog /var/log/httpd/access.log combined
   363      SetEnv PYTHONHOME /var/www/html/myproject/myvenv
   364  </VirtualHost>
   365
   366  WSGIPassAuthorization On
   367  WSGIPythonHome "/var/www/html/myproject/myvenv"
   368  WSGIPythonPath "/var/www/html/myproject/myvenv/lib/python3.10:/var/www/html/myproject/myvenv/lib/python3.10/lib-dynload"
   369



### 自分で試したこと
mod_wsgiの中身を確認しました

LoadModule wsgi_module "modules/mod_wsgi.so"
WSGIPythonHome "/var/www/html/myproject/"
WSGIPythonPath /home/suser/anaconda3/envs/my_env/lib/python3.10/site-packages

mod_wsgiが依存するpythonの確認
sudo find / -name libpython3.10.so.1.0
/home/suser/anaconda3/envs/my_env/lib/libpython3.10.so.1.0
/home/suser/anaconda3/pkgs/python-3.10.11-h955ad1f_3/lib/libpython3.10.so.1.0
(my_env) [suser@ik1-417 myproject]$ 


仮想環境の作り直し
pythonのインストールのし直し
0

2Answer

Comments

  1. @yuikairi

    Questioner

    ありがとうございます。
    確認してみます!

(Apache2+mod_wsgi)+Django

私は次の構成をお勧めします。
nginx+(gunicorn+Django)
nginx+(uWSGI+Django)
nginx+(runserver+Django)

runserverはDjangoの開発サーバーですが、nginxでプロキシすることでhttpsにも対応します。

nginxのロードバランサーを使うとしても、1プロセスでもスレッド対応ですので数十人程度は十分にさばけます。

0Like

Comments

  1. @yuikairi

    Questioner

    ありがとうございます!
    一度試してみます!!

Your answer might help someone💌