操作前己搭建好的环境:
后面进行安装的环境 :
由于每个人的版本和环境配置存在区别,所以操作过程不可能完全一样,配置过程中出现差异/错误很正常,及时查找网络上的现有资料就可以解决99.9%的问题。
发现下述过程存在错误欢迎各位大佬们指正。
有些过程不是很详细,还是希望能帮助到大家。
1、编辑 /home/firstDjango/firstDjango/settings.py(如图):
2、编辑 /home/firstDjango/firstApp/views.py:
简单演示,在用户访问index页面后,得到一个显示“测试 测试”的页面。
from django.http import HttpResponse
def index(request):
return HttpResponse('测试 测试')
3、编辑 /home/firstDjango/firstDjango/urls.py:
from django.contrib import admin
from django.urls import path
from firstApp.views import index
urlpatterns = [
path('admin/', admin.site.urls),
path('index/', index)
1、安装uwsgi:
pip3 install uwsgi
2、编写一个简单的wsgi应用测试uwsgi是否能正常使用:
新建test.py文件,内容如下:
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return [b"Hello World!!!!"] # python3 用这个
# return "Hello World" # python2 用这个
在test.py所在的路径下,运行:
uwsgi --http :8000 --wsgi-file test.py
3、静态文件收集:
在项目文件夹下,新建静态文件目录: static。
django的setting.py文件中,添加如下内容:
# 添加静态链接文件位置,该文件夹需要在服务器上创建
STATIC_ROOT = os.path.join(BASE_DIR, '../collected_static')
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
4、uwsgi 配置文件:
在项目根目录下新建uwsgi的配置文件uwsgi.ini,添加如下配置:
注意:在添加该配置文件时一定要将注释删除,否则会报错!!!
[uwsgi]
socket = 127.0.0.1:8000 # uwsgi监听端口
chdir = /home/firstDjango # django项目所在目录
wsgi-file = firstDjango/wsgi.py # django项目wsgi文件
processes = 4
threads = 2
stats = 127.0.0.1:8000
module = firstDjango.wsgi
master = true # 启用主进程
max-requests = 2000 # 最大请求
uwsgi 指定配置文件启动django项目:
/usr/local/bin/uwsgi --ini /home/firstDjango/uwsgi.ini
在服务器中链接静态文件,可以看到多少文件链接成功则配置成功:
sudo python3 manage.py collectstatic
安装:
sudo yum -y install nginx
查看nginx 配置文件路径:
nginx -t
修改 nginx 的配置文件 /etc/nginx/nginx.conf,添加server(一点要添加在http下面):
http {
server {
listen 80;
server_name localhost;
charset utf-8;
location / {
uwsgi_pass 127.0.0.1:8000; # 监听端口和uwsgi相同
include /etc/nginx/uwsgi_params;
}
location /static {
alias /home/firstDjango/static/; #uwsgi配置的静态链接的地址
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
}
sudo systemctl start nginx
动网站服务:(这里的0.0.0.0不能用公网IP替代):
python3 manage.py runserver 0.0.0.0:8000
在浏览器内输入:服务器外网:8000,显示:
输入:服务器外网:8000/index,显示: