前言
Django项目本身就可以启动运行,为什么还需要部署到Apache或者Nginx上呢?初学者都会遇到这个问题,我们来看看官方解释:It's intended only for use while developing. (We're in the business of making Web frameworks, not Web servers.),意思是django的业务是制作Web框架,而不是Web服务器。自带的web server只是方便开发,并不能直接放到生产环境,有兴趣的同学可以自己测试两者性能上的差距。 言归正传,我们这里主要讲述如何搭建Apache环境。
安装Apache
Apache(win 64)下载:https://www.apachehaus.com/cgi-bin/download.plx#APACHE24VC09
1.解压缩,修改Apache24\conf\httpd.conf 文件中的apache路径和端口:
...... Define SRVROOT "E:/Apache24" ServerRoot "${SRVROOT}" ...... #Listen 12.34.56.78:80 Listen 8088 ...... ServerName localhost:8088 ......
2.打开E:\Apache24\bin\httpd.exe,在浏览器输入http://127.0.0.1:8088/ 出现welcome页面代表成功。
mod_wsgi 模块下载:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
1.把whl文件改成zip,解压缩,把里面的mod_wsgi.so拷贝到E:\Apache24\modules路径下,httpd.conf 中新增一段配置:
#添加mod_wsgi.so 模块 LoadModule wsgi_module modules/mod_wsgi.so
若mod_wsgi解压后找不到mod_wsgi.so文件(如有跳过此步骤)
运行cmd,进入Scripts目录执行安装操作:
pip3 install mod_wsgi-4.5.17+ap24vc10-cp34-cp34m-win_amd64.whl
在Scripts目录执行:mod_wsgi-express module-config
把三行内容复制到httpd.conf:
#添加mod_wsgi.so 模块 LoadFile "c:/python34/DLLs/python3.dll" LoadModule wsgi_module "c:/python34/lib/site-packages/mod_wsgi/server/mod_wsgi.pyd" WSGIPythonHome "c:/python34"
配置Apache与Django
1.打开Apache配置文件 httpd.conf,在末尾增加一段配置:
#添加mod_wsgi.so 模块 LoadFile "c:/python34/DLLs/python3.dll" LoadModule wsgi_module "c:/python34/lib/site-packages/mod_wsgi/server/mod_wsgi.pyd" WSGIPythonHome "c:/python34" #指定myweb项目的wsgi.py配置文件路径 WSGIScriptAlias / D:/mysite/mysite/wsgi.py #指定项目路径 WSGIPythonPath D:/mysite <Directory D:/mysite/mysite> <Files wsgi.py> Require all granted </Files> </Directory> Alias /static D:/mysite/static <Directory D:/mysite/static> AllowOverride None Options None Require all granted </Directory>
2.打开django项目setting配置:
DEBUG = False ALLOWED_HOSTS = ['127.0.0.1','localhost'] #允许访问的ip。也可以用'*'表示,代表不受限制
重启bin\httpd.exe,输入URL
测试OK
3.将Apache安装成windows server,就不需要每次打开httpd.exe出现一个小黑框了。
bin目录下运行cmd命令httpd -k install -n “服务名” (不加参数,默认Apache2.4)
运行apache:net start apache2.4
停止apache:net stop apache2.4
删除apache:sc delete Apache2.4
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
在前面的章节中我们使用python3 manage.py runserver来运行服务器。这只适用测试环境中使用。 正式发布的服务,我们需要一个可以稳定而持续的服务器,比如Apache, Nginx, IIS等,本文将以 Apache为例。 使用Apache和mod_wsgi部署Django 是一种久经考验的将Django投入生产的方法。 mod_wsgi是一个Apache模块,可以托管任何Pyt
我是Docker、AWS Lambda和Zappa的新手,但我正在尝试配置一个几乎没有成功的项目。 我连接到Docker(),激活环境,配置AWS凭据并运行和。但是,在部署之后,我得到一个错误(执行): 我认为这是因为我的dir结构不是标准的: 所以,我的django项目在文件夹中,因为我不喜欢将所有文件都扔在那里并与其他配置文件混合。 我的zappa配置文件如下所示: 和Dockerfile:
本文向大家介绍Apache上部署Django步骤详细介绍,包括了Apache上部署Django步骤详细介绍的使用技巧和注意事项,需要的朋友参考一下 Apache上部署Django 目前,Apache和mod_python是在生产服务器上部署Django的最健壮搭配。mod_python 是一个在Apache中嵌入Python的Apache插件,它在服务器启动时将Python代码加载到内存中。 Dj
2. 项目部署 本章主要介绍如何部署Camel。 首先,介绍Vagrant这个虚拟机工具。借助Vagrant,我们可以保证本地开发及测试环境与线上环境的一致。 随后介绍slb-admin的部署。管理端本地也要安装Dengine,用以测试Nginx配置文件的语法是否正确。此外,还需要部署数据库:MySQL及MongoDB。 最后介绍Nginx服务器的部署。我们可以根据具体需求部署Nginx集群,每台
描述 本文档提供了 3 种部署方式,对应 Jboot 里的 3 种打包方式。 通过 脚本 运行 在 打包方式 文档中,我们可以把项目打包成一个 .zip 的压缩包项目,里面带有 jboot.sh (和 jboot.bat) 执行脚本, 只需要我们解压 .zip 压缩文件,通过如下命令就可以对 jboot 项目进行启动和停止。 # 启动 ./jboot.sh start # 停止 ./jboot.
部署中,你可以先构建打包生成环境代码,再启动服务。因此,构建和启动分为下面两条命令: next build next start 例如,使用now去部署package.json配置文件如下: { "name": "my-app", "dependencies": { "next": "latest" }, "scripts": { "dev": "next",