虽说我的网盘(exm,也许页面确实丑了点,不过页面生成的样式你自己可以改)美工已经被乱刀砍死,但是还是有小伙伴问我是怎么搭建的

关于搭建

这个真没什么好说的,vps我只安装了nginx,然后配置域名指向到我的同步目录,然后用其他工具同步上去就行了(关于问自己手动同步麻烦的,其实并不麻烦,有很多好用的软件,本人用的Resilio Sync)

关于页面的生成

第一阶段

那时候只有两三个文件,html页面是我手写的手动增加的

第二阶段

此时已经有了一个子目录,文件开始增多,我开始考虑写个简单的先用着,Python的写了,不过速度感觉有点不如意(原谅我的吹毛求疵),并且有个麻烦事是每次重装系统后需要安装Python,然后我选用了Golang,时间仓促写了一个单页面生成,不进行目录深度遍历的,也就是说我每次新开一个目录需要把这个程序拷贝到当目录下双击生成html

第三阶段

文件夹和文件日益增多,上面的方式我已经感觉到特别繁琐了,需要找个机会把代码重构一下,使他更加优化
然后我开始着手写第二版,这个版本我没保留,具体功能就是对上一个版本做了一点改进,使它支持了深度遍历
但是自从T00ls灵车漂移事件以来,官方管理员给GetWriter老哥(如果谁认识希望告知,希望能致个歉)的一纸封书将此事推上风口浪尖,作为始作俑者,我网站首当其冲,遭受了大量老哥多来自夜间的洗礼(说实话,希望高抬贵手,流量快没了),这件事情持续发酵了两三天,我一直在思考,如何为老哥们带来更良好的观感体验,于是我觉得应该要让这个页面生成器对前端展示的修改更加方便,无须从代码入手,开始了第三版的编写

暂时实现的功能

  • 支持模板
  • 加入了配置文件(其实也是模板)
  • 加入了noView.txt规则(具体表现为这个txt中的文件名将不参与生成html页面)
    可能以后会抽时间再进行优化,这个时间不定,看哪天自己的需求更高了

更新记录在下面,更新后的代码就不贴了,之前的代码我就在这个页面上删了,自己感兴趣可以上github查看

至于前端

你们别想了,前端之魂在我体内没存在过,哪天兴致来了可能会看看相关知识,这个丑页面就丑着凑合看吧,如果有能力可以进行二次修改

为它搞了一套css与文件类型图标(关于style.css文件,是需要你放到远端在线调用的,你可以上传到七牛,或者你同步的时候放到网站根目录下,然后通过域名+/style.css的方式来调用)

更新记录

  • 对一部分冗余的进行了优化,提升了一丁点效率
  • 可以放到环境变量path了,不需要放到本目录里了,只需要在本目录调用就可以(当然),按照之前的方法也是可以的

  • 对文件li列表做了排序,优先级为后缀名->文件名
  • 对li列表加了css类,可以自定义li的css了,具体见生成后的文件
  • 为页面生成器搞了一套css,为类型加上了图标,具体效果见下图

下载地址

这次不能给抓住机会了,放github吧

自己网盘的页面生成器(私用公开-Golang)的更多相关文章

  1. Linux命令行上传文件到百度网盘

    利用bpcs_uploader你可以自动将VPS主机上的文件上传到百度网盘中,同时也可以从百度网盘中下载文件到VPS主机上,让你的文件安全地"住"在百度云中.[font=Tahom ...

  2. Aria2+yaaw+Chrome插件BaiduExporter实现百度网盘下载

    Aria2+yaaw+Chrome插件BaiduExporter实现百度网盘下载 这篇博客主要为了解决百度网盘下载限速以及linux等操作系统无百度客户端的问题.主要包括两个方面第一个是aria2的安 ...

  3. 利用Python爬虫实现百度网盘自动化添加资源

    事情的起因是这样的,由于我想找几部经典电影欣赏欣赏,于是便向某老司机寻求资源(我备注了需要正规视频,绝对不是他想的那种资源),然后他丢给了我一个视频资源网站,说是比较有名的视频资源网站.我信以为真,便 ...

  4. 百度网盘自动上传脚本-bpcs_uploader

    安装jsonpear install pecl/json 一.bpcs_uploader下载和使用: 1.下载地址:http://oott123.github.com/bpcs_uploader/ 2 ...

  5. IDM下载器使用方法详解:百度网盘下载,视频会员一网打尽!

    一. IDM的设置 [01]IDM插件与各大浏览器的集成 默认情况下,在成功安装IDM后,直接点击这里的选项,会弹出[常规设置],一般情况下直接保持默认的配置即可,如果你使用的是比较小众的浏览器,你可 ...

  6. 200G网盘资源分享

    今日偶得大量网盘资源,遂写一博文以分享! 来源:HACK学习呀,微信公众号:HACK学习呀 文件名 链接 提取密码 2015cracer入侵入门到精通视频教程 点我查看 trf3 一笔√带过入侵教程 ...

  7. 关于Pandownload和百度网盘

    本周,百度网盘第三方客户端 Pandownload 被查,开发者被“跨省追捕”:百度网盘“用户激励计划”在未充分告知用户的情况下,利用用户自己的电脑做 P2P 上传节点.这两件事再度引发了对百度网盘的 ...

  8. The Road To Hadoop(网盘系统的实现)

    因为毕业设计的原因,得从零开始学习hadoop.虽然接触Hadoop也有一段时间了,但是没有一个完整的时间段去学习,在公司实习的同时,只能利用零零碎碎的时间学习,今天完成了第一个版本的基于Hadoop ...

  9. C站投稿189网盘视频源(UP主篇)

    C站投稿189网盘视频源(UP主篇) 现在C站(吐槽弹幕网)的视频来源基本靠的都是189网盘,比如番剧区的每个视频基本来源于此,不像AB两站,拥有自己的资源服务器,为啥呢?没钱啊.都是外来的视频.本站 ...

随机推荐

  1. node.js中express模块创建服务器和http模块客户端发请求

    首先下载express模块,命令行输入 npm install express 1.node.js中express模块创建服务端 在js代码同文件位置新建一个文件夹(www_root),里面存放网页文 ...

  2. Sitecore安装(手动方式)

    Sitecore安装 Sitecore提供手动安装压缩包(.zip)和自动安装程序包(.exe),当您运行自动安装程序时,引导界面会指导您一步步进行安装.为了让您更细致的了解Sitecore的安装配置 ...

  3. SLAM学习笔记

    ORB_SLAM2源码: 获得旋转矩阵,来自这里:http://www.cnblogs.com/shang-slam/p/6406584.html 关于Covisibility图来自:http://b ...

  4. 抓取biqukan

    #python3.7 ''' 功能:实现www.biqukan.com/1_1094/5403177.html小说下载为txtv1.0 ''' import requests,sys,time fro ...

  5. FTL 数字有逗号

    Long i=100000000l; Map model=new Map(); model.put("t",i); 在freemarker中显示为100,000,000 想按原样输 ...

  6. centos 6.8 配置csh的shell和环境变量

    1.查看shell 查看系统中安装的所有版本的shell:cat   /etc/shells 查看当前用户使用的shell:echo $SHELL 2.修改用户shell 可以在/etc/passwd ...

  7. tomcat1章1

    package ex01.pyrmont; import java.net.Socket; import java.net.ServerSocket; import java.net.InetAddr ...

  8. git push跳过用户名和密码认证配置教程

    在使用git commit命令将修改从暂存区提交到本地版本库后,只剩下最后一步将本地版本库的分支推送到远程服务器上对应的分支了,如果不清楚版本库的构成,可以查看我的另一篇,git 仓库的基本结构. 新 ...

  9. 可视化的fineBI很高大上 使用简单,简单操作了一下,拖一拖就行,收费 只能看一下人家的demo 网站 http://demo.finebi.com/webroot/decision#directory

  10. c#md5加密的简单用法

    using System.Security.Cryptography; //MD5 md5 = MD5.Create(); MD5 md5 = new MD5CryptoServiceProvider ...