lala.im:AVBook安装步骤

運維技術·lala.im · 2019-07-19 · 98 人浏览

原文地址:https://lala.im/6067.html,請支持原作者!該處僅作轉載。

由于前两天一堆人去爬avmoo,导致这个程序的爬虫功能已失效,需要等作者更新。所以现在我们在Linux上部署爬不到数据的话就没法用,这里我把Windows那个一键环境内的数据库给导了出来,现在可以放到Linux上跑。
这边我写一下Debian10/9两个系统的安装方法。
首先下载数据库文件,上传到你服务器的/opt目录下,这个数据截至2019年7月8号:
https://gofile.io/?c=AesBCW 密码:imlala
Debian10安装常用工具以及Nginx/MariaDB:

apt -y install git curl unzip python-certbot-nginx nginx mariadb-server

安装PHP7.3:

apt -y install php7.3 php7.3-common php7.3-cli php7.3-cgi php7.3-fpm \
php7.3-gd php7.3-mysql php7.3-sqlite3 php7.3-pgsql php7.3-opcache \
php7.3-mbstring php7.3-curl php7.3-xml php7.3-xmlrpc php7.3-zip \
php7.3-intl php7.3-json php7.3-bz2

初始化MariaDB:

mysql_secure_installation

进入MySQL的Shell:

mysql -u root -p

创建数据库/用户/导入数据:

CREATE DATABASE avbook CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'avbook'@'localhost' IDENTIFIED BY '设置你的用户密码';
GRANT ALL PRIVILEGES ON avbook.* TO 'avbook'@'localhost';
USE avbook;
SOURCE /opt/avbook.sql
FLUSH PRIVILEGES;
quit

拉取项目文件/填写数据库连接信息:

cd /var/www
git clone https://github.com/guyueyingmu/avbook.git
chown -R www-data:www-data avbook
cd avbook
cp .env.example .env
nano .env

编辑如下文件:

nano config/urlconfig.php

将btsow的域名改为下图所示的:

範例
安装依赖包:

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/bin/composer
composer install

生成key:

php artisan key:generate

新建Nginx站点配置文件:

nano /etc/nginx/conf.d/avbook.conf

写入:

server {
    listen       80;
    server_name  av.koko.cat;
    index        index.html index.htm index.php;
    root         /var/www/avbook/public;
    client_max_body_size 128g;

    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      1h;
    }

    location ~ .*\.(js|css)?$
    {
        expires      1h;
    }

    location ~ \.php$ {
        fastcgi_pass   unix:/run/php/php7.3-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

重启Nginx即可完成部署:

systemctl restart nginx

如果需要SSL:

certbot --nginx --agree-tos --no-eff-email

爬虫相关的命令(目前已失效,暂时用不了):

php artisan avbook:avmoo --max=300
php artisan avbook:javbus --movie=1 --page=10 --magpage=10
php artisan avbook:javlib --genre --movie

下面是Debian9的安装方法,稍微复杂一点,因为这个程序最低需要MySQL5.7和PHP7.2,Debian9的源里面都没有,这里要配置第三方源。

安装MySQL5.7:

apt -y install gnupg
wget https://repo.mysql.com/mysql-apt-config_0.8.13-1_all.deb
dpkg -i mysql-apt-config_0.8.13-1_all.deb
apt -y update
apt -y install mysql-server

选择8.0回车,然后切换成5.7版本:
範例

之后设置数据库root密码:
範例

设置开机启动:

systemctl enable mysql

注意:你现在已经安装了MySQL了,就不要再去装MariaDB了。

Debian9添加sury源:

apt -y install apt-transport-https ca-certificates lsb-release
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
apt -y update

安装PHP7.2:

apt -y install php7.2 php7.2-common php7.2-cli php7.2-cgi php7.2-fpm \
php7.2-gd php7.2-mysql php7.2-sqlite3 php7.2-pgsql php7.2-opcache \
php7.2-mbstring php7.2-curl php7.2-xml php7.2-xmlrpc php7.2-zip \
php7.2-intl php7.2-json php7.2-bz2

其他步骤和Debian10的一样,只是最后在配置Nginx时略有不同,使用下面的配置即可:

server {
    listen       80;
    server_name  av.koko.cat;
    index        index.html index.htm index.php;
    root         /var/www/avbook/public;
    client_max_body_size 128g;

    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      1h;
    }

    location ~ .*\.(js|css)?$
    {
        expires      1h;
    }

    location ~ \.php$ {
        fastcgi_pass   unix:/run/php/php7.2-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

演示站(24h删除):

https://av.koko.cat

運維技術 lala.im
Theme Jasmine by Kent Liao