【入门】从零开始建网站-可以正常外网访问啦

共 3597字,需浏览 8分钟

 ·

2021-04-08 21:09


  • 网站目前效果扫码直达(目前还很简略):

  • 细节优化1--稳定运行

    • 为什么是flask + nginx + uWSGI部署

    • 先写一段简单的代码

    • uWSGI

      • 安装

      • 下载

      • 在项目的目录创建一个uwsgi的配置文件

      • 启动

      • 其它命令

    • nginx

      • 安装

      • 启动

      • Nginx 其它命令

    • 总结


文末“阅读原文”访问CSDN,阅读效果更佳。或者扫面下面二维码直达CSDN:

细节优化1--稳定运行

我们开始进一步的网站搭建。之前的基础入门是最简单的基本访问,如果我断开Linux的远端连接,服务就会挂掉。因为用的是flask自带的简易调试服务器,正儿八经还得是成熟的产品才行,所以我们用flask + nginx + uWSGI部署。

为什么是flask + nginx + uWSGI部署

  • wsgi web应用程序之间的接口。它的作用就像是桥梁,连接在web服务器和web应用框架之间。
  • uwsgi 是一种传输协议,用于定义传输信息的类型。
  • uWSGI 是实现了uwsgi协议WSGI的web服务器。

想了解详细内容可以参考这篇文章:什么是uWSGI?什么是flask?什么是nginx?

先写一段简单的代码

"""
-*- coding: utf-8 -*-
@Author  : blyang
@project : PythonCode
@Time    : 2021/1/4 21:35
"""


from flask import Flask

app = Flask(__name__)


@app.route('/')
def index():
    return '<h1>Hi,欢迎您的光临~<br>关注公众号Python小灶,每天学习新知识~<h1>'


if __name__ == "__main__":
    app.run()

uWSGI

安装

切换到虚拟环境,以你自己的为准:source /home/blyang/flask_demo/bin/activate

下载

pip install uwsgi

在项目的目录创建一个uwsgi的配置文件

比如我在/home/blyang/python_code/flask_demo目录下创建uwsgi.ini文件

[uwsgi] #配合nginx使用 socket = 127.0.0.1:8000 #项目路径 /home/blyang/python_code/flask_demo/ chdir      = 自己项目路径 #文件名 wsgi-file = run.py #程序内启用的application变量名 callable = app #指定工作进程 processes    = 4 #主进程 master     = true #每个工作进程有2个线程 threads = 2 #指的后台启动 日志输出的地方 daemonize    = uwsgi.log #保存主进程的进程号 pidfile = uwsgi.pid #虚拟环境环境路径 virtualenv = /home/blyang/flask_demo/

启动

uwsgi /home/blyang/python_code/flask_demo/uwsgi.ini

其它命令

uwsgi --reload /home/blyang/python_code/flask_demo/uwsgi.pid   重启 uwsgi --stop /home/blyang/python_code/flask_demo/uwsgi.pid   停止

nginx

安装

按照以下教程,成功启动nginx服务。

nginx作用nginx安装教程

简单来说,nginx是全球比较流行的服务器(不是物理服务器,是软件,我们的代码要挂在一个服务上一直跑,就是这个web服务器)

安装过程总体顺利,有点小坑的地方:1、在 安装 Nginx 部分,所用示例版本太老,用最新的稳定版,否则可能安装不成功 2、在 Nginx 配置 部分,先用默认的的/usr/local/webserver/nginx/conf/nginx.conf配置文件就好,然后这个地方改成自己的IP和监听端口就可以了。

 server {
        listen       80;
        server_name  47.111.250.14;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            #root   html;
            #index  index.html index.htm;
            include uwsgi_params;
            uwsgi_pass 127.0.0.1:8000;
        }

启动

/usr/local/webserver/nginx/sbin/nginx**最终效果:**代表nginx成功安装、启动。

Nginx 其它命令

/usr/local/webserver/nginx/sbin/nginx -s reload            # 重新载入配置文件 /usr/local/webserver/nginx/sbin/nginx -s reopen            # 重启 Nginx /usr/local/webserver/nginx/sbin/nginx -s stop              # 停止 Nginx

配置nginx.conf ,/usr/local/webserver/nginx/conf/nginx.conf

总结

**最终效果:**代表nginx成功安装、启动。 

经过这样一番操作,我写的代码就24小时挂在了网上一直在运行,全世界都可以访问啦!这就是网站的雏形,接下来只需要不断地丰富网站就行啦!域名访问:(注意端口要是默认的80才能生效)

公网IP访问:


相关推荐

【Python·翻译】| 周刊490期
【Linux】| 用户和用户组管理
【C/C++|DataStructure】栈与队列之栈的顺序存储结构


浏览 31
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报