在搭建 YUM 源仓库时最后一个步骤便是运行 HTTP 服务,当时用 httpd 实现,前段时间因故导致仓库需重新配置后改用 nginx。接下来打算用 Go 写一个,所以顺便简要记录下用过的几个 HTTP 服务。
Python
Python 自带一个内置的 HTTP 服务SimpleHTTPServer
,只需一行代码,即可实现一个简单的 HTTP 文件服务:
只要运行的目录下没有 index.html 文件,便会显示当前目录下的文件列表。
httpd
httpd
是 Apache HTTP 服务器程序,在 CentOS 7 需要另行安装:
与SimpleHTTPServer
不同,httpd 工作目录默认为/var/www/html/
,此外默认端口和工作目录均需在配置文件httpd.conf
中更改。
Nginx
Nginx 除了可以搭建 HTTP 服务器之外,也常用于反向代理和负载均衡:
nginx 在使用之前,需先对配置文件/etc/nginx/nginx.conf
进行一些设置:
设置完成后,便可在终端输入命令启动:
Golang
最后一种方法自然是用 Go 实现,在 Go 中写一个 HTTTP 文件服务非常简单,短短两行代码(主要)便可实现:
保存后在终端运行 go run serverFile.go
便可实现相同的文件浏览功能,虽然界面要较为简陋一点。
另外需要说明的是在使用 Go 之前,要先安装并对环境进行配置。
最后
虽然以上几种方法都有相同的功能,但是多了解一点,便多一种可能性。学习一门技术的最好方法莫过于重复的造轮子,然后按自己的风格去改写。
注:以上配置均为最小实现用于测试功能,如在生产环境使用,最好对一些参数进行设置。