一行代码写完了服务器!【直接运行并建议收藏】

举报
雷学委 发表于 2022/02/28 20:55:24 2022/02/28
【摘要】 这一行代码直接启动服务器curl -k https://gitee.com/py4u/lite-server/raw/master/web.sh -o web.sh && bash web.sh运行后直接打开浏览器输入:localhost:80之前身边很多前端的朋友在问,如果写好了前端UI项目, 就简单想放到云服务器访问域名或者主机名就能看到站点UI,怎么破?学委想了一下,写Java还得用S...

这一行代码直接启动服务器

curl -k https://gitee.com/py4u/lite-server/raw/master/web.sh -o web.sh && bash web.sh

运行后直接打开浏览器输入:localhost:80

在这里插入图片描述

之前身边很多前端的朋友在问,如果写好了前端UI项目, 就简单想放到云服务器访问域名或者主机名就能看到站点UI,怎么破?

学委想了一下,写Java还得用SpringBoot或者Tomcat,这搞完还得上服务器安装Java。
这对后端小白或者前端来说或是一个很大的工作量啊!

所以突然想到Python的http server模块。

这就是极简的服务器代码:

  • 如果云主机的Python是3.X版本,那就在UI项目目录运行下面命令:
python -m http.server 80 
  • 如果云主机的Python是2.X版本,那就在UI项目目录运行下面命令:
python -m SimpleHTTPServer 80 

然后打开服务器绑定的域名就可以看到UI了

下面是一个稍微简易的做法

一个简单的脚本把上面的根据不同Python版本启动server

步骤一 设置web.sh脚本

创建一个目录如"fxcgo", 复制下面代码保存为web.sh

修改web页面目录的路径(包含index.html)。


#!/bin/sh

#web变量值为目标ui文件的目录(即包含index.html)目录
web=./ui/

version=$(python -c 'import sys; print(sys.version_info[:1])')

echo $version

log=${web}/../server.log
#备份日志
mv ${log} ${log}`date`

cd ${web}

#判断当前python 版本
if [ "$version" == "(3,)" ] ; then
    nohup python -m http.server 80 > ${log} 2>&1 &
else
    nohup python -m SimpleHTTPServer 80 > ${log} 2>&1 &
fi

步骤二 创建ui目录,在里面放一个index.html

前面创建的“fxcgo”目录内新建一个“ui”目录。

这个目录就是放前端编译好静态代码,整站的静态资源,包含index.html等静态页面。

比如文末展示的主页,进入“ui”目录内,编写index.html内容如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>雷学委联盟</title>
</head>
<body>
</body>
</html>

项目名为leiXueWei,那么最后目录结构如下图:

复制下面命令执行脚本启动,查看效果:

bash web.sh

这个是访问主页的效果图:

以上,目录名不一定为“fxcgo”,但是项目内必须要放置“ui”目录。

持续学习持续开发,我是雷学委!
欢迎关注/收藏/转发,您的支持将给我源源不断的动力!

项目代码持续更新(现在支持Linux/Mac一行命令安装):
lite-server

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。