首页 帮助中心 帮助中心 Python Flask简易版本web站点发布教程
Python Flask简易版本web站点发布教程
时间 : 2024-08-15 16:21:52 编辑 : 华纳云 阅读量 : 184

Flask作为Python编写的Web微框架,可以用于Python语言快速搭建一个网站或者web服务。结合cpolar内网穿透工具将我们的应用程序发布到公共网络上,实现可多人远程进入到该web应用程序访问。

先用HTML创建网页结构,然后用CSS设计使之更美观。利用Javascript与页面上的不同元素进行交互,最后使用python与web服务器(也成为后端)进行连接。

安装和部署Flask,先在服务器上安装python3和pip3,验证安装:

C:> py --version

Python 3.N.N

C:> py -m pip --version

pip X.Y.Z from ... (python 3.N.N)

使用pip安装和更新:

$ pip install -U Flask

创建环境:

conda create -n SAYHELLO python=3.10

激活环境:

conda activate SAYHELLO

创建项目目录:

mkdir SAYHELLO

访问创建目录:

cd SAYHELLO

 在当前目录启用VS Code:

code .

在SAYHELLO文件夹下新建两个附加文件夹,一个名为templates储存html文件的位置,另一个名为static文件夹,下面新建一个名为css的文件夹。在css文件夹下新建一个名为main.css的文件,

body {

    text-align: center;

    background-color: SlateGrey;

}

p {

    color: white;

    font-family: Shanti;

    font-size: 1.2em;

    display: inline-block;

    margin:  20px;

}

img {

    margin: 60px 0 30px 0;

    width: 250px;

}

input {

  width: 300px;

  margin: 20px 20px;

  height: 50px;

  border: none;

  border-radius: 10px;

  font-family: Shanti;

  font-size: 1.3em;

  text-align: center;

}

 

input:focus {

    outline: none;

    border: solid 5px #00FFCE;

}

 

#greet {

    background-color: PaleVioletRed;

    border:  none;

    width:  200px;

    color: white;

}

 

#greet:hover {

    background-color: MediumVioletRed;

}

templates文件夹里新建一个名为index.html的文件。

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>Say Hello</title>

    <link rel="stylesheet" href="{{ url_for('static', filename='css/main.css') }}">

</head>

<body>

    <img src="https://images.cpolar.com/img/202311271456089.png">

    <br>

    <form action="greet" method="post">

        {% for message in get_flashed_messages() %}

             <p>{{ message }}</p>

         {% endfor %}

        <br>

        <input type="text" name="name_input">

        <br>

        <input type="submit" value="GREET" id="greet">

    </form>

</body>

</html>

在SAYHELLO文件下新建一个名为Procfile的文件。

web: gunicorn app:app

在SAYHELLO文件下新建一个名为app.py的文件,

from flask import Flask, render_template, request, flash

 

app = Flask(__name__)

app.secret_key = "manbearpig_MUDMAN888"

 

@app.route("/")

def index():

flash("what's your name?")

return render_template("index.html")

 

@app.route("/greet", methods=['POST', 'GET'])

def greeter():

flash("Hi " + str(request.form['name_input']) + ", great to see you!")

return render_template("index.html")

在SAYHELLO文件下新建一个名为requirements.txt的文件。

certifi==2021.5.30

click==7.1.2

Flask==1.1.2

gunicorn==20.0.4

itsdangerous==1.1.0

Jinja2==2.11.2

MarkupSafe==2.0.1

Werkzeug==1.0.1

wincertstore==0.2

在TERMINAL里启动Flask:

flask run

以上步骤,可以完成Flask搭建带问答形式的界面,下面问答界面发布到公网,分享给别人且可以实现互动。

安装Cpolar内网穿透:

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

添加服务:

sudo systemctl enable cpolar

启动 cpolar服务:

sudo systemctl start cpolar

cpolar安装成功后,在外部浏览器上访问9200端口。使用cpolar账号登录(如没有账号,可以点击下面免费注册),登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可。

再配置Flask的问答界面公网访问地址,公网远程访问Flask的问答界面即可,更多技术分享请关注华纳云

华纳云 推荐文章
并发和并行是一样的吗如何区别 香港云服务器常用哪些数据迁移工具 新手搭建个人云服务器的完整教程 判断香港云服务器网络质量的常用方式
客服咨询
7*24小时技术支持
技术支持
渠道支持