Tiyhttpd是一个支持多端口监听的HTTP服务器,基于QTQTcpServer封装。
目录结构[src]├── LICENSE #MIT许可证├── README.md #使用说明├── tiyhttpd.pro #工程文件#主程序├── mai.cpp #启动多端口监听├── serverthread.cpp #QThread子类线程,设置IP,port及启动Server├── server.cpp #QTcpServer子类,多线程,每个线程对应一个port监听├── request.cpp #接受cliet请求,多线程,每个线程对应一个请求├── respose.cpp #构造返回Request Headers├── resposefile.cpp #返回网页├── resposedictioary.cpp#列举url对应目录├── mime.cpp #设定扩展应用├── commo.cpp #获取当前时间├── log.cpp #日志系统#配置├── httpstatus.h #状态码├── tiyhttpd.ii #服务器配置文件├── tiyhttpd.log #服务器日志├── mime.txt #mime配置[www] #网站根目录├──static├──idex.html[respose] #网页返回状态网页├── 301.html #301 Permaetly Moved├── 304.html #304 Not Modified├── 403.html #403 Forbidde└── 404.html #404 Not Foud Todo加入Redis数据库支持,存储访问数据
加入QT界面,显示实时连接情况
运行环境Liux/MacOSX
QT4/QT5
使用打开配置文件tiyhttpd.ii配置服务器选项。
[httpd]port=1234|1235|1236 #配置服务器监听的多个端口,用|隔开ipv6=true #配置ipv6支持logfile=tiyhttpd.logshow_log=true[site]root_path=/home/huagyi/Practice/QT/tiyhttpd/www #网站根目录dir_listig=true #是否允许获取文件树,否则返回403 forbidde#idex="idex.html", "idex.htm" #配置后,直接跳到网页idex.html,不列出文件树[request]buffer_size=1048576 #为网页文件分配的内存空间keep_alive_eable=true #是否打开长连接keep_alive_default=truekeep_alive_timeout=30 #长连接timeoutkeep_alive_timeout_max=300









评论