会员登录 - 用户注册 - 设为首页 - 加入收藏 - 网站地图 用 Python 写的 Web 页面,如何让所有人都能访问?!

用 Python 写的 Web 页面,如何让所有人都能访问?

时间:2025-11-04 23:22:25 来源:益强数据堂 作者:域名 阅读:559次

本文就将介绍如何在服务器上配置你的用P页面项目,以下教程基于小白视角讲解,何让适用于任何Python脚本(爬虫、人都web、用P页面数据分析、何让自动化等都行)

同步环境

其实整体思路就是人都,在本地开发,用P页面然后在服务器配置和你本地一样的何让环境,并将全部项目文件上传到服务器,人都之后就像部署远程 Jupyter Notebook 一样,用P页面使用 nohup 命令将程序挂在后台即可。何让

所以假设你现在已经在本地写好你的人都网站下面可以将你本地开发用到的库整理到 requirements.txt 中(可以通过pip freeze > requirements.txt)并ssh连接上服务器之后,执行下方命令

pip install -r requirements.txt 

但如果你在服务器上安装了 anaconda 的用P页面话,更多情况下,何让只需要进入服务器执行 pip install pywebio 即可。人都

现在,你的服务器开发环境就和本地一致了,下一步自然是将整个项目文件同步到服务器,使用 git 是比较方便的方法,使用命令行命令是常见的方法,但是对于大多数小白来说,源码库通过 ftp 软件点点可能更方便。

所以下面是在 mac 上使用 Termius 的同步文件过程(Windows 可以用 filezilla)首先打开软件

点击 sftp 并选择一个服务器,之后输入你的服务器账号密码进入你的服务器文件夹(默认root目录下),然后创建一个新的文件夹用于你的项目

接下来只要双击进入你创建的文件夹,并将你本地的整个文件夹拖入,等待上传完毕即可。

挂载程序

现在,你的服务器有和你本地一致的开发环境与完整的项目文件,下面让我们把它启动起来。

首先还是通过ssh工具连上服务器,之后cd进入刚刚的新建的目录,比如我的文件夹名称为aliyun,我的命令就是

cd aliyun 

接下来同样适用 nohup 启动并将脚本挂在后台执行即可,例如我的脚本为 aliyun.py,我的香港云服务器命令就是

nohup python aliyun.py & 

这样就将该命令,挂在后台执行了,最后一步同样是打开短端口,例如你在 PyWebIO 中使用的端口是 8888 就要去阿里云后台防火墙/安全组开放这个端口

至此,你就可以通过你的公网IP:端口,访问你的web项目,还有一个常见的问题,如何关闭这个端口/程序?

我们可以通过端口反查进程号

也可以根据命令查找进程pid(ps -ef|grep python)

然后将对应的进程kill掉,并在修改完代码后重新启动即可,这些就属于运维相关知识,网上资料很多,感兴趣的可以自己查阅。

自定义页脚

最近很多人问,怎么修改默认页面中页脚的显示文字,或者去掉默认页面的Powered by PyWebIO

就像我的页面一样,显示早起Python,并且点击跳转到我设置好的页面

其实稍微对web开发懂一点的,都会知道这是额外加入了html元素,高防服务器既然没有修改的命令,说明这个html肯定是写死在某个文件夹中。

在mac下,我们可以打开anaconda安装目录,并根据下面的路径中找到 index.html

之后使用任意代码编辑器修改框中部分即可

在 Windows 或者 centos 下也是类似,找到 pywebio 对应的目录,修改对应文件即可,大家可以自己研究!

(责任编辑:域名)

最新内容
推荐内容
  • 光驱安装XP系统教程(详细教你如何使用光驱安装XP系统)
  • X.Org server 1.5Ubuntu 8.10中装载了最新版本的X.Org,带来了对热插拨设备的更好支持。基本上,它能使得大多数用户不用”/etc/X11/xorg.conf”文件就能正常运行。Linux kernel 2.6.26Alpha 4包含了基于2.6.26.2的内核版本。32位下载地址:http://cdimage.ubuntu.com/releases/intrepid/alpha-4/intrepid-desktop-i386.iso64位下载地址:http://cdimage.ubuntu.com/releases/intrepid/alpha-4/intrepid-desktop-amd64.iso
  • 木质电脑键盘制作教程(自制环保键盘,让你的打字体验更加亲近大自然)
  • 今天查了一下,squid对dns的支持是这样一个原理: 1、假如dns server发送域名时带有ttl,则以此ttl为准,一般dns server都会带有对ttl的支持,现在我用的dnsmasq默认ttl是0。 2、假如dns server没发送ttl(ttl=0),squid就以自己的配置positive_dns_ttl为准,这个配置默认是6小时。 3、原先squid里配置的一个negative_dns_ttl,证实是配错了,这个配置指的是squid在取不到域名(出错)的情况下会多久再去重取。 我原先的情况是positive_dns_ttl和dns server的ttl都没有配置而配置了negative_dns_ttl,这时squid以默认的positive_dns_ttl为准,即6小时,这个时间对web服务器来说太长了。当前我解决的办法是修改dns server的ttl为60 有些朋友可能是用bind来做的dns,bind可能默认的ttl并不是0,所以用positive_dns_ttl配置不起效的话,修改ttl值就好。 附:检测dns服务器ttl值的方法 在一台linux机器上,修改/etc/resolv.conf将dns指向到要测试的dns,然后执行 dig test.com 假如该dns能解析test.com,就会返回一系列数据,其中有一列指明了ttl值,一试即知。
  • vivoY79手机值得买吗?(vivoY79手机性能、价格、摄像头等方面的评估)
  • 在 Windows 中把时间设置正确了过后,回到在 Ubuntu 后系统的时间又不一样了,在 Ubuntu中把时间设置正确后进入 Windows 后,时间又不一致了。    出现这种情况的原因是 Windows 和 Ubuntu它们在默认情况下看待硬件时间(主板上的BOIS显示的时间)的方式不一样。 知道了问题存在的原因,我们就来解决这个问题。这个是一个关于时间的问题,我们就先来了解一下关于时间的概念UTC即Universal Time Coordinated,协调世界时GMT即Greenwich Mean Time,格林尼治平时Windows 与 Linux 缺省看待系统硬件时间的方式是不一样的: * Windows把系统硬件时间当作本地时间(local time),即操作系统中显示的时间跟BIOS中显示的时间是一样的。 * Linux/Unix/Mac把硬件时间当作 UTC,操作系统中显示的时间是硬件时间经过换算得来的,比如说北京时间是GMT+8,则系统中显示时间是硬件时间+8。这 样,当PC中同时有多系统共存时,就出现了问题。假如你的 Ubuntu 和 Windows 中设置的时区都为北京时间东八区,而你在 Ubuntu中把当前系统时间更改为9:00AM。则此时硬件中存储的实际C时间是1:00AM。这时你重启进入Windows后,你会发现 windows系统中显示的时间是 1:00AM,比 Ubuntu 中慢了八个小时。同理,你在 Windows中更改或用网络同步了系统时间后,再到Ubuntu中去看,系统就会快了8小时。在实行夏令时的地区,情况可能会更复杂些。在ubunut下联网后时间还未能自动调整过来, 可用一下方法修改:让 Windows 把硬件时间当作 UTC开始->运行->CMD,打开命令行程序(Vista则要以管理员方式打开命令行程序方可有权限访问注册表),在命令行中输入下面命令并回车Reg add HKLMSYSTEMCurrentControlSetControlTimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1====================================================================Ubuntu中不使用UTC时间,而启用本地时间编辑/etc/default/rcS把其中的内容“UTC=yes”改成“UTC=no“,保存后重启系统就可以了
热点内容