使用WAMP和mod_wsgi部署Django Restfule服务

罗汉·辛格·达卡

我正在尝试使用mod_wsgi和WAMP部署基于Django rest-framework构建的API。当我使用'django-admin startproject Predictor'创建一个新的Django项目并将其部署在WAMP上时,它运行良好,因为我可以看到默认的Django窗口。

现在,我使用“ python manage.py startapp Predictor”在项目中创建了一个应用程序,我构建了一个接受GET调用的API,并使用“ python manage.py runserver”对其进行了测试,并且工作正常。现在,我再次启动了WAMP服务,并尝试转到“ localhost:8000”,它将继续加载。而且,一旦我停止WAMP服务,它就会崩溃,提示无法连接。不知道发生了什么。有人可以帮我做什么吗?仅供参考,我在Windows上,并且已经为Django项目创建了虚拟环境。这就是我的.conf和wsgi文件的样子

wsgi_windows.py

activate_this = 'C:/Users/DELL/Envs/predenv/Scripts/activate_this.py'
# execfile(activate_this, dict(__file__=activate_this))
exec(open(activate_this).read(),dict(__file__=activate_this))

import os
import sys
import site

# Add the site-packages of the chosen virtualenv to work with
site.addsitedir('C:/Users/DELL/Envs/predenv/Lib/site-packages')

# Add the app's directory to the PYTHONPATH
sys.path.append('C:/Users/DELL/Envs/predenv')
sys.path.append('C:/Users/DELL/Envs/predenv/Predictor')

os.environ['DJANGO_SETTINGS_MODULE'] = 'Predictor.settings'
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Predictor.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

httpd.conf

Listen localhost:8000
Listen [::0]:80
ServerName localhost:8000

LoadFile "c:/python376/python37.dll"
LoadModule wsgi_module "c:/python376/lib/site-packages/mod_wsgi/server/mod_wsgi.cp37-win_amd64.pyd"
WSGIPythonHome "c:/python376"
WSGIPythonPath "C:/Users/DELL/Envs/predenv/Predictor"

httpd-vhosts.conf

WSGIPythonPath "C:/Users/DELL/Envs/predenv/Predictor"
<VirtualHost *:80>
    WSGIPassAuthorization On
    ErrorLog "logs/predictor.error.log"
    CustomLog "logs/predictor.access.log" combined
    DocumentRoot "C:/Users/DELL/Envs/predenv/Predictor"
    WSGIScriptAlias /  "C:\Users\DELL\Envs\predenv\Predictor\Predictor\wsgi_windows.py"
    <Directory "C:\Users\DELL\Envs\predenv\Predictor\Predictor">
        <Files wsgi_windows.py>
            Require all granted
        </Files>
    </Directory>
</VirtualHost>
罗汉·辛格·达卡

问题是在我看来,它无法“导入熊猫”。

要解决此问题,我必须在我的apache'httpd-vhosts.conf'文件中添加此行

WSGIApplicationGroup %{GLOBAL}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Django REST框架的本地和mod_wsgi服务器之间的Django JWT身份验证行为不同

使用自定义 mod_wsgi 和 python 对共享服务器的访问受限

使用mod_wsgi和apache2的服务器内部错误

Apache 无法使用 mod_wsgi 作为 Windows 服务启动

寻求有关使用Apache和mod_wsgi的Django部署设置的建议

使用 mod_wsgi 部署 django(python) 项目

使用 mod_wsgi 在 Apache 上部署 Django

Django + mod_wsgi + apache2:服务器挂起

500内部服务器错误mod_wsgi apache“ importerror:No Module named'django'

ubuntu 16 上的 500 内部服务器错误 django + mod_wsgi + apache2

在同一Apache服务器上运行mod_wsgi(Flask)应用程序和非mod_wsgi应用程序

网关超时,在Apache上使用Django和mod_wsgi

Hostgator VPS中的Django部署-同一服务器上的PHP和Python-easyapache24和mod-wsgi

Django,Apache和mod_wsgi

Django 和 mod_wsgi python 版本?

Apache、Django 和 mod_wsgi

403错误禁止您没有权限访问此服务器上的/ myapp mod_wsgi和apache

使用mod_wsgi在Apache2上部署Django-Django项目的正确位置?

使用mod_wsgi在Ubuntu 16.04 apache2上部署Django应用

使用mod_wsgi在Centos 6.5上部署基于python3.4的Django项目:可行吗?

无法在 Apache (mod_wsgi) 上部署官方 Django 教程

错误 403:禁止您无权使用 apache、mod-wsgi 和 django 在此服务器上访问 /

部署烧瓶和apache2 mod_wsgi的问题

在Apache和mod_wsgi下运行的Django使用“虚拟”文件系统?

在wordpress中运行Django项目(使用Apache和mod_wsgi在wordpress的子URL上)

在ubuntu服务器16.04上使用Apache2,mod_wgi和django 1.9进行部署

设置文件的位置,用于使用mod_wsgi在Apache2上使用Django部署静态文件

apache和mod_wsgi的多个django网站

在同一服务器上同时运行带有mod_wsgi的Apache和带有Gunicorn的Nginx?