今天我们介绍一下如何搭建一个小说站。我们采用的源码是小说精品屋,这里感谢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, 转载请注明原文链接与源码地址,谢谢。