导读:今天首席CTO笔记来给各位分享关于如何用Django做服务器的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
用pyqt做好了前端,想用django做服务器,想问一下大概怎么搭建呢?
一般客户端(也就是你说的前段)跟服务器端(你准备使用Django)都是通过 HTTP 协议交换信息的(除非有特别的需求,才会使用别的或者定制协议)。
在 客户端(PyQT)中,你可以安装 Requests 库,它可以帮助你发送 HTTP 请求给服务器端,
在 Django 中你可以使用 Django REST Framework 网页链接处理 客户端的HTTP请求。
如何在服务器上部署Django项目并使其在后台一直运行
前几天老师让我把一个Django项目(爬虫网页)放到校园内网上,但是我想先用自己的服务器来尝试一下。之前刚好有在Digital Ocean上买过服务器用来运行ss脚本,平时服务器一直放着没啥用,所以就拿它来试验一下。
废话不多说,第一步通过WinSCP软件把Django文件传到服务器上。
在服务器中安装Django需要的环境和我所需要的Python第三方库。
以上所有步骤完成后,还需要进行一步操作,这是我经历的一个 坑 。 打开Django文件目录中的 settings.py ,把 ALLOWED_HOSTS=[] 改为 ALLOWED_HOSTS=["*"] 。
在服务器中打开到 manage.py 所在的目录,输入命令:
python3 manage.py runserver 0.0.0.0:8000
然后按下回车,在浏览器中输入: 该服务器IP地址:8000 ,大功告成!
Attention:
1. python3 不是特定的,是根据你的Django项目所需要的环境指定的。
2. 8000 是端口号,可以修改。
如果想要Django项目一直运行,关闭终端后还在运行,即需要运行如下命令, nohup command , command 即位上文所说的 python3 manage.py runserver 0.0.0.0:8000 。
如何在django中使用redis做缓存服务器
实现缓存的方式,有多种,本地内存缓存,数据库缓存,文件系统缓存。这里介绍使用Redis数据库进行缓存。
环境
redis
django-redis
配置
settings.py
CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://127.0.0.1:6379/1", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", "PASSWORD": "mysecret"
}
}
}
python manage.py createcachetable1
缓存有站点缓存,和单个view缓存
站点缓存:
settings.py
MIDDLEWARE = [ # 站点缓存 , 注意必须在第一个位置
'django.middleware.cache.UpdateCacheMiddleware',
... # 站点缓存, 注意必须在最后一个位置
'django.middleware.cache.FetchFromCacheMiddleware',
]
视图缓存:
views.py
from django.shortcuts import renderfrom django.views.decorators.cache import cache_pagefrom cache.models import Foo# 在需要缓存的视图上添加装饰器, 参数是设置timeout 超时时间, 单位是秒, @cache_page(60)def index(request):
bar = Foo.objects.all() return render(request, 'cache/index.html', {'bar': bar})
如何将django用apache2部署在亚马逊的服务器上
使用mod_python部署
1.为了配置基于 mod_python 的 Django,首先要安装有可用的 mod_python 模块的
Apache。
2.然后应该有一个 LoadModule 指令在 Apache 配置文件中。 它看起来就像是这样:
LoadModule python_module /usr/lib/apache2/modules/mod_python.so
3.配置Apache,用来定位请求URL到Django应用:
VirtualHost *:80
ServerName
Location "/python1"
SetHandler python‐program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE python1.settings
PythonAutoReload Off
PythonDebug Off
PythonPath "['/var/www/html/python1'] + sys.path"
PythonInterpreter python1
/Location
Location "/python2"
SetHandler python‐program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE python2.settings
PythonAutoReload Off
PythonDebug Off
PythonPath "['/var/www/html/python2'] + sys.path"
PythonInterpreter python2
/Location
[......]
/VirtualHost
它告诉 Apache,任何在 / python这个路径之后的 URL 都使用 Django 的 mod_python 来处理。
它 将DJANGO_SETTINGS_MODULE 的值传递过去,使得 mod_python 知道这时应该使用哪个配置。
查看 mod_python 文档获得详细的指令列表。
4.重启Apache,查看:" target="_blank":
/etc/init.d/apache2 restart
使用mod_wsgi部署
1.下载安装 mod_wsgi 模块,生成mod_wsgi.so和wsgi.conf
2.在配置中加载模块:
LoadModule python_module /usr/lib/apache2/modules/mod_wsgi.so
3.修改Apache配置文件httpd.conf
VirtualHost *:80
ServerName
DocumentRoot /var/www/html/python
WSGIScriptAlias / /var/www/html/python/apache/django.wsgi
Directory /
Order deny,allow
Allow from all
/Directory
Directory /apache
Allow from all
/Directory
/VirtualHost
4.创建并配置wsgi的配置文件:
# filename:python.apache.django.wsgi
import os, sys
#Calculate the path based on the location of the WSGI script.
apache_configuration= os.path.dirname(__file__)
project = os.path.dirname(apache_configuration)
workspace = os.path.dirname(project)
sys.path.append(workspace)
os.environ['DJANGO_SETTINGS_MODULE'] = 'python.settings'
os.environ['PYTHON_EGG_CACHE'] = '/tmp'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
print sys.stderr, sys.path
shellchmod a+x django.wsgi
5.修改Django项目配置文件settings.py:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'python',
'USER': 'admin',
'PASSWORD': 'admin123',
'HOST': '127.0.0.1',
'PORT': '3306', }
}
TEMPLATE_DIRS = (
'/var/www/html/python/templates',
)
6.重启Apache,访问
/etc/init.d/apache2 restart
怎么在vps上搭建django服务器
安装pip
下载
[plain] view plain copy
#wget --no-check-certificate
解压并进入解压后的文件夹
[plain] view plain copy
#tar zvxf 1.5.5.tar.gz
#cd pip-1.5.5/
安装
[plain] view plain copy
#python setup.py install
四、使用pip安装django
[plain] view plain copy
#pip install django
结语:以上就是首席CTO笔记为大家整理的关于如何用Django做服务器的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~