当前位置: 首页 > news >正文

玩具网站建设策划书西安市做网站公司有哪些

玩具网站建设策划书,西安市做网站公司有哪些,外贸网站设计,app打包公司有哪些在上一篇文章中,详细讲述了如何在vps上搭建ftp服务,参考我的文章本地访问远程vps中的sqlite数据库中的内容之(一)建立并访问ftp服务器-CSDN博客 本篇记录一下如何在本地访问远程vps中的sqlite数据库。 (一&#xff0…

在上一篇文章中,详细讲述了如何在vps上搭建ftp服务,参考我的文章本地访问远程vps中的sqlite数据库中的内容之(一)建立并访问ftp服务器-CSDN博客

本篇记录一下如何在本地访问远程vps中的sqlite数据库。

(一)首先使用如下命令给vps搭建python3的环境

sudo yum update -y
sudo yum install -y python3 python3-pip

安装好以后,使用which python3查看一下 

 

安装 web.py 框架

pip3 install web.py

CentOS 7上是自带sqlite3的,所以一般不需要安装。 

(二)远程访问sqlite

既然无法远程直接访问sqlite,那么就通过web api接口来访问。

思路如下:

本地----web api----远程vps(api读取sqlite)

将本地编写好的get_vps_sqlite.py和数据库proxy.db一并通过Filezilla上传到vps的同一目录中。

get_vps_sqlite.py代码如下:

import web
import sqlite3
import jsonurls = ('/', 'Index'
)data_path = 'proxy.db'
app = web.application(urls, globals())class Index:def GET(self):try:params = web.input(id=None, country=None, limit=None)conn = sqlite3.connect(data_path)conn.row_factory = sqlite3.Rowcursor = conn.cursor()sql = "SELECT * FROM proxys"conditions = []values = []# 根据参数拼接查询条件if params.id:try:record_id = int(params.id)conditions.append("id = ?")values.append(record_id)except ValueError:return json.dumps({"error": "参数 id 必须是整数"}, ensure_ascii=False)if params.country:# 模糊匹配或者精确匹配都可以,这里示范精确匹配conditions.append("country = ?")values.append(params.country)if conditions:sql += " WHERE " + " AND ".join(conditions)# 处理limit参数if params.limit:try:limit = int(params.limit)if limit <= 0:return json.dumps({"error": "参数 limit 必须是正整数"}, ensure_ascii=False)sql += " LIMIT ?"values.append(limit)except ValueError:return json.dumps({"error": "参数 limit 必须是整数"}, ensure_ascii=False)cursor.execute(sql, tuple(values))rows = cursor.fetchall()result = [dict(row) for row in rows]web.header('Content-Type', 'application/json; charset=utf-8')return json.dumps(result, ensure_ascii=False)except Exception as e:web.ctx.status = '500 Internal Server Error'return json.dumps({"error": str(e)}, ensure_ascii=False)finally:if 'conn' in locals():conn.close()if __name__ == "__main__":import syssys.argv.append("0.0.0.0:8383")app.run()

 放开8383端口

sudo firewall-cmd --zone=public --add-port=8383/tcp --permanent
sudo firewall-cmd --reload

检查是否放行成功

sudo firewall-cmd --list-ports

(三) 在远程vps上运行get_vps_sqlite.py

进入项目目录(这个目录也是我的ftp目录):

cd /home/xiaoqinglong/files

 

运行脚本,注意:保持后台运行建议用 nohup 

nohup python3 get_vps_sqlite.py > output.log 2>&1 &

(四) 本地测试访问

在本地电脑的浏览器中输入如下地址,成功。

http://vps的ip地址:8383/
http://vps的ip地址:8383/?id=12
http://vps的ip地址:8383/?country=CN&limit=5

(五)安全建议

如果你只是自己使用这个 API,可以只允许你本地的 IP 访问 8383端口,在vps控制台命令中输入:

sudo firewall-cmd --zone=public --add-rich-rule='
rule family="ipv4" source address="你的本地公网IP/32" port protocol="tcp" port="8383" accept' --permanent
sudo firewall-cmd --reload

这样,就可以实现本地访问远程vps中的sqlite数据库了。

通过完善vps中的xxx.py,配合上青龙界面,可以实现定时操作数据库。而本地则什么都不需要做,只需要在浏览器输入网址访问即可,非常方便。 

http://www.yayakq.cn/news/654247/

相关文章:

  • 厦门it做网站最强杭州企业推广网站
  • html网站模板 免费网站源码做exe执行程序
  • 织梦网站主页施工合同电子版
  • 公司定制网站建设公司网站三要素怎么做
  • 查询网站whois优化网站推广
  • 网站建设市场价格游戏公司网页设计
  • 找人做网站被骗wordpress语言包更新
  • 网站风格介绍四川专门做招聘酒的网站
  • 微网站建设图片怎么让人理解网站建设
  • 四川省工程建设管理协会网站百度推广外包哪家不错
  • 怎样才能制作网站大型网站开发案例
  • 设计的有趣的网站wordpress 文章分页 链接
  • 官网网站搭建搜索引擎营销seo
  • 濮阳网站建设哪家好微信商城开发用华网天下卓越
  • php 校园网站设计展示性公司网站html
  • 网站忘了怎么办互联网建设与管理
  • 数据集网站四平市城市建设档案馆网站
  • 易派客网站是谁做的做网站的语言叫什么
  • 网站建设公司谁管管理咨询公司的服务机构
  • 家教网站开发公司wordpress更换主题方法
  • 注册企业在哪个网站手机公司网站建设比较好的
  • 赶集网网站建设ppt模板详情页设计理念
  • 旅游网站建设目标郑州企业网站建设兼职
  • 东营微信网站制作支付建设网站的费用什么科目
  • 北京市建设工程交易服务中心网站有什么网站可以帮人做模具吗
  • 网站怎么做排行榜安卓代理ip软件
  • 小学教育网站专题模板四川自助网站
  • 如何制作门户网站行业网站建设优化案例
  • 慕课网站建设开题报告网站 推广方案
  • 正规网站制作公司有哪些南宫企业做网站