Code Monkey home page Code Monkey logo

novel's Introduction

书虫网 Build Status

书虫网是一个基于laravel5.2的小说采集/展示系统

环境要求

推荐使用homestead环境

  • PHP7
  • Laravel5.2
  • composer
  • node.js
  • mysql
  • beanstalkd
  • redis

安装使用说明

  1. 下载源码

    Linux下执行命令:

    git clone http://github.com/copyrenzhe/novel.git
    cd novel
    composer install
    npm install
  2. 配置项目

    执行下列命令:

    cp .env.example .env
    php artisan key:generate
    touch .env  //根据实际情况修改数据库配置
    php artisan migrate
    php artisan db:seed --class=CreateAdminSeeder
    gulp
  3. 运行系统 保证8000端口未被占用后 执行命令:

    php artisan serve

    然后在浏览器中输入localhost:8000 访问首页 进入localhost:8000/admin进入后台,初始用户名/密码:admin/admin

  4. 队列进程管理 推荐使用supervisor来管理自动更新与采集队列进程。 supervisord.conf的配置如下(可根据具体情况调整):

    [program:worker]
    process_name=%(program_name)s_%(process_num)02d
    command=php /var/www/novel/artisan queue:work --sleep=3 --tries=1 --memory=512 --daemon
    autostart=true
    autorestart=true
    user=root
    numprocs=2
    redirect_stderr=true
    stdout_logfile=/var/www/novel/storage/logs/queue-worker.log
    
    
    [program:beanstalkd]
    process_name=%(program_name)s_%(process_num)s
    command=beanstalkd -l 127.0.0.1 -p 11300
    autostart=true
    autorestart=true
    numprocs=1
    redirect_stderr=true
    stdout_logfile=/var/www/novel/storage/logs/beanstalkd.log
    
    [program:redis]
    process_name=%(program_name)s_%(process_num)s
    command=redis-server
    directory=/root/soft/redis/src
    autostart=true
    autorestart=true
    numprocs=1
    redirect_stderr=true
    stdout_logfile=/var/www/novel/storage/logs/redis.log

    配置完成后,后台即可爬取 笔趣阁看书中名著吧中的小说。所有爬取后的小说将会自动进行更新。

  5. 更新策略

    更新策略可以根据服务器负载能力进行调整,部分策略会发送邮件,需要在.env中配置smtp并修改管理员邮箱。

    • 每天10点和18点更新排名前30的热门小说
    • 每天凌晨三点更新所有小说
    • 每周六与起点的周排行进行对比
    • 每个月的28号与起点的月排行进行对比
    • 每十分钟监测系统是否运行正常
  6. 微信公众号配置

    .env中配置公众号的APPID、SECRET、TOKEN,并将公众账号的URL配置为 */wechat (*为网站url)

引用的框架与包

联系作者

Email: copyrenzhe [email protected]

novel's People

Contributors

bigbanana avatar copyrenzhe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

novel's Issues

作者你好,

我部署这个程序有点问题,请问可不可以留个微信或者QQ,想请教你一下,

shu000.com打不开?

老铁你这项目挺好的,我就随手一点击这个网站,打不开

想看看长啥样

写一下这个项目自己的踩坑经历;

我是在PHP7.2下运行的;

第一个;redis方法使用问题;

\App\Http\Controllers\CommonController的Redis的facade要改成use Illuminate\Support\Facades\Redis;
不要使用之前的use Redis;

第二个;php7.2之后count()方法严格模式的问题;

在\Illuminate\Foundation\Bootstrap\HandleExceptions里,修改handlerError()方法;

	public function handleError($level, $message, $file = '', $line = 0, $context = [])
	{
		if (error_reporting() & $level) {
			if (strpos($message, 'Parameter must be an array or an object that implements Countable') !== false)
				return;

			throw new ErrorException($message, 0, $level, $file, $line);
		}
	}

第三个,npm install报错“dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.62.dylib”;需要升级一下对应的包;

brew uninstall --ignore-dependencies node icu4c
brew install node

或者直接升级对应的包;brew upgrade node

之后再执行gulp,可能会执行失败,有几个npm包没安装,安装一下就搞定了;

您好,安装完报了一个错误,请问这个是什么问题呢?

ErrorException in CommonController.php line 21:
Use of undefined constant inf - assumed 'inf' (this will throw an Error in a future version of PHP)

提示未定义常量?

CommonController 控制器方法

namespace App\Http\Controllers;

use App\Models\Novel;
use App\Http\Requests;
use Cache;

class CommonController extends Controller
{
    //
    protected $genres;

    /**
     * CommonController constructor.
     */
    public function __construct()
    {

        $hotNovels = [];
        $hotNovels['total'] = \Redis::zRevRangeByScore(config('cache.redis.view_total'), -inf, +inf,
            ['withscores' => true, 'limit' => [0, 8]]);
        $hotNovels['month'] = \Redis::zRevRangeByScore(config('cache.redis.view_month'), -inf, +inf,
            ['withscores' => true, 'limit' => [0, 8]]);
        $hotNovels['week'] = \Redis::zRevRangeByScore(config('cache.redis.view_week'), -inf, +inf,
            ['withscores' => true, 'limit' => [0, 8]]);

        $genres = \Cache::rememberForever('genres', function() {
            return category_maps();
        });
        $this->genres = $genres;
        view()->composer(['common.right', 'common.navbar'], function($view) use($hotNovels, $genres) {
            $view->with('hotNovels', $hotNovels)->with('genres', $genres);
        });
    }
}

这个是因为我没有安装redis 的服务吗?

导入任何书都报错

初始化的时候就显示
ErrorException in Kanshuzhong.php line 65: file_put_contents(/www/wwwroot/novel.learningman.top/public/cover/2_cover.jpg): failed to open stream: No such file or directory

有点问题

file_get_contents(/data/wwwroot/yangfan.ren/test/public/build/rev-manifest.json): failed to open stream: No such file or directory (View: /data/wwwroot/yangfan.ren/test/resources/views/app.blade.php) (View: /data/wwwroot/yangfan.ren/test/resources/views/app.blade.php)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.