如何从我的PC创建服务器,以使Intranet上的任何其他PC均可访问

时间:2019-06-18 06:38:09

标签: python mysql flask server

我是这个领域的新手。我使用Python Flask建立了一个简单的网站。还使用MySQL数据库和flask创建了反向地理编码api。

所有这些都托管在我自己的PC中,即本地主机。现在,我想制作一个交互式网站(窗体)。但我不想将其托管在可远程访问的服务器(如Amazon AWS)上。   我的假设是,由于我的工作环境是将我的PC连接到还连接了许多其他设备的Intranet,因此我将在该PC上托管服务器,而其他人将从该PC访问网站。

由于我缺乏有关服务器和员工的理论知识,因此无法这样做。任何建议阅读材料表示赞赏。

from flask import Flask, jsonify
import mysql.connector

my_db = mysql.connector.connect(
    host="localhost",
    user="root",
    passwd="XXXX",
    database="cat")

my_cursor = my_db.cursor()

app = Flask(__name__)

@app.route('/rev_geocode/lat=<float:lat>,long=<float:long>', methods['GET'])


def rev_geocode(lat,long):

    my_cursor.execute("SELECT address FROM rev_geocode WHERE lat = {} AND lon = {};".format(lat, long))
    data = my_cursor.fetchall()

    return jsonify({"address":str(data[0][0])})

if __name__ == '__main__':
    app.run(debug=True)

# http://127.00.1:5000/rev_geocode/lat=<float:lat>,long=<float:long>

4 个答案:

答案 0 :(得分:1)

如果我请求http://your_ip:5000/rev_geocode/lat=31'OR DROP TABLE rev_geocode; — priv,long=12-会发生什么?

答案 1 :(得分:0)

您可以将本地主机作为自己的IP地址。然后使用该IP运行程序,类似地,您可以使用相同的IP在同一LAN中连接的计算机上运行。

更改您允许的主机= [ip地址]

然后在其上运行。

答案 2 :(得分:0)

非常简单,将app.run(debug=True)更改为app.run(host= '0.0.0.0')。然后其他人可以通过访问您机器的ip来找到您的表单。

Flask docs-在“外部可见服务器”下

答案 3 :(得分:0)

在Linux终端上使用ifconfig命令来确定您计算机的IP地址。将127.0.0.1替换为URL中的IP地址。 Intranet中的其他用户现在可以访问您的应用。