今天我们介绍一下如何搭建一个小说站。我们采用的源码是小说精品屋,这里感谢201206030大佬。
源码地址:https://github.com/201206030/fiction_house
免责声明:本教程仅供个人学习,不得用于商业用途。若产生版权纠纷,与本人没有任何关系。
小说精品屋是非常成熟的小说站搭建程序,可定制化程度高,搭建简单,功能丰富,用Java编写。作者的Github上给出的搭建教程较为简洁,对于新手来说操作起来比较有难度,因此我在这里重新写一篇使用该源码搭建小说站的详细教程,希望对大家有帮助。本教程作者为香菇肥牛,原文链接为https://qing.su/article/149.html, 转载请注明原文链接与源码地址,谢谢。
1, 软硬件要求
首先我来介绍一下小说精品屋源程序的组成。该源码分为两个部分,前端程序和后台爬虫。前端程序是给用户浏览器访问的网站程序,爬虫是用来抓取小说进入数据库的程序。如果您打算搭建访问量较高的小说站,那么我建议站库分离。如果您的目标访客量不大,那么您可以将其放在同一台服务器上。我们今天介绍将这两个部分放在同一台服务器上。
我们使用的服务器配置如下:
- CPU: 1核
- 内存: 4 GB或以上
- 硬盘:建议至少100 GB, 每本小说约占据10 MB空间,100GB可以放下10000本小说。如果你想存储更多小说,则需要更大的硬盘空间。
- 操作系统:我们这里使用Ubuntu 18.04 LTS 64 bit, 您可以根据个人需求选择,相差不大。
2, 安装JDK
小说精品屋的前端程序和爬虫程序都是由Java编写的,因此我们需要安装JAVA来实现程序运行。我们到Oracle官网下载JDK 1.8.
https://www.oracle.com/java/technologies/javase-jdk8-downloads.html
选择上面的“Linux x64 Compressed Archive”下载,并上传到服务器上。
上传完毕后,将该压缩包解压,并放到/opt目录下,比如/opt/jdk1.8.0_251
然后我们需要配置环境变量。编辑/etc/profile文件,然后添加下面的语段:
1 2 3 | export JAVA_HOME="/opt/jdk1.8.0_251" export PATH="$JAVA_HOME/bin:$PATH" export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH" |
保存退出后source该文件:
1 | source /etc/profile |
此时,执行java命令可以看到正确的java用法提示界面,说明配置成功。
3, 修改小说站配置文件
我们到这里https://github.com/201206030/fiction_house/releases下载程序最新的压缩包。压缩包打开后有三个文件夹,分为爬虫、数据库、前端,由于中文无法在SSH中正确显示和匹配,所以我这里将其重新命名为crawler, database, 和frontend. 我们接下来需要修改其中的几个文件。
crawler/application.yml
- 第4行: username:booksdbuser, password:booksdbpassword
frontend/application.yml
- 第2行: port: 80
- 第7行: username:booksdbuser
- 第8行: password:booksdbpassword
frontend/application-website.yml
- 第4行: 你的小说站名
- 第6行: domain: http://qing.su (改成你的小说站URL)
修改完毕后,将所有这些文件夹上传到服务器上,位置任意。
4, 配置数据库
我们搭建的小说站基于MySQL数据库,小说数据全部存入数据库,而不是写入文本文件。执行下面的命令:
1 2 | apt-get install mysql-server mysql_secure_installation |
这样就安装好了MySQL数据库。执行下面的命令进入MySQL
1 | mysql -u root -p |
我们下面要新建一个数据库并初始化。
1 2 3 | CREATE DATABASE books DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; GRANT ALL ON books.* TO 'booksdbuser' IDENTIFIED BY 'booksdbpassword'; quit; |
回到SSH界面,我们进入刚刚上传的源程序的database文件夹,导入数据库:
1 | mysql -u root -p books < books.sql |
这样,我们就安装并配置好了数据库。
5, 运行程序
由于前端和爬虫是两部分,我们使用screen来后台运行这两部分程序。如果您还没有安装screen, 请执行下面的命令安装。
1 | apt-get install screen -y |
安装完毕后,我们首先运行前端程序。进入frontend文件夹,然后执行:
1 2 | screen -S frontend setsid java -jar novel-front-2.4.0.beta.jar |
可以发现屏幕上出现了好多好多各色文字,这是正常的,不用担心。此时我们访问小说站域名,如果能看到前端的框架,但是没有任何小说,说明前端运行正常。使用ctrl + a + d组合键退出该screen.
然后,我们接着运行爬虫程序。进入crawler文件夹,执行:
1 2 | screen -S crawler java -jar crawl-book-1.0-SNAPSHOT.jar |
此时爬虫就开始运行了。使用ctrl + a + d组合键退出该screen. 稍等片刻,网站上就可以看到爬的小说了。大约爬一天左右,小说站就有足够的规模了。
至此,我们使用小说精品屋搭建好了功能完备的小说站。如果您想自定义您的网站外观,请解压上面的前端jar文件并编辑相应的文件。如果您在搭建过程中有其他疑问,请留言,我将尽力解答。
希望对大家有帮助!本教程作者为香菇肥牛,原文链接为https://qing.su/article/149.html, 转载请注明原文链接与源码地址,谢谢。
I’m curious to find out what blog system you’re working with?
I’m experiencing some small security issues with my latest website and I’d like to
find something more safe. Do you have any recommendations?
0mniartist asmr