• 日常搜索
  • 端口查询
  • IP查询
  • 在线工具
  • 搜本站

云豹直播搭建文档

云豹直播搭建文档,文章底部附原文档一份,有需要获取!

一 、搭建前期准备

注:操作系统centos7.0以上 x64位,客户服务器是否需要添加域名白名单(ip可以访问,域 名不能访问)

需要开通端口:22 80 3306 6379 19967,ftp:有则开(21,20000/30000)

(1)生成软件包信息缓存

yum make cache

(2)安装更新

yum update -y

(3)安装必要软件

yum install -y zip unzip wget curl git vim zsh nano screen

(4)安装oh my zsh(有助于补全和选择目录)

sh  -c  "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-
zsh/master/tools/install.sh  -O -)"

二、搭建LNMP环境

wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz
tar xzvf oneinstack-full.tar.gz
cd oneinstack
./install.sh #注:请勿sh install.sh或者bash install.sh这样执行

安装选项选择:

1.设置SSH端口(默认22),回车即可
Do you want to enable iptables? [y/n]: n
2.然后选择是否安装 web,输入y
3.输入 1 安装 nginx
4.输入 3 不安装Apache
5.输入 5 不安装tomcat
6.然后选择是否安装数据库database,输入y
7.输入 2 安装mysql-5.7
8.然后输入数据库root密码123456(注:妥善保管)
9.然后输入1 选择从二进制安装
10.然后输入 y 安装PHP
11.输入 5 安装PHP7.2
12.输入 y 安装php 缓存插件Do you want to instal opcode cache of the PHP? [y/n]:y
13.输入 1 安装Zend OPcache
14.Please select PHP extensions: 选择 fileinfo和Redis【这个地方特别注意】
15.输入 n 不安装Pure-FTPd
16.输入 y 安装phpMyAdmin
17. 输入 y 安装redis-server
18.输入 n 不安装memcached-server
19.输入 n 不安装HHVM

三、redis配置

配置redis密码

执行命令修改/usr/local/redis/etc/redis.conf文件,(也可以手动修改redis.conf 文件)

echo requirepass redis的密码 >> /usr/local/redis/etc/redis.conf

重启redis

systemctl restart redis-server
注:service redis-server restart 在centos7.x中不支持

四、创建数据库

==使用oneinstack一键搭建中的phpMyAdmin插件==

vim /etc/my.cnf

在my.cnf 里面设置

[mysqld]下面添加语句

sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVIS
ION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

访问

http://你的ip地址/phpMyAdmin/

云豹直播搭建文档  第1张

创建数据库用户名和数据库名,密码

云豹直播搭建文档  第2张

云豹直播搭建文档  第3张

上传之前,先解压web源码,目录下会有 live---admin--visitor.sql文件,导入 数据库 (其中admin/visitor 是搭建完成后登陆网站后台的默认账号和密码)

云豹直播搭建文档  第4张

导入附近这个函数:

getDistance.sql

内容如下:

CREATE FUNCTION `getDistance` (lat1 FLOAT, lon1 FLOAT, lat2 FLOAT, lon2
FLOAT)
RETURNS FLOAT 
DETERMINISTIC 
BEGIN
RETURN ROUND(6378.138 * 2 * ASIN(SQRT(POW(SIN((lat1 * PI() / 180 -
lat2 * PI() / 180) / 2), 2)
+ COS(lat1 * PI() / 180) * COS(lat2 * PI() / 180)
* POW(SIN(( lon1 * PI() / 180 - lon2 * PI() / 180 ) /
2),2))),2);
END

注意:必须要使用Navicat导入

五、web站点搭建

在oneinstack目录下添加虚拟机

cd ~/oneinstack 
./vhost.sh

选项选择

1、选择1 ,Use HTTP Only
2、然后输入域名
3、输入网站的文件目录,直接回车就行
4、然后添加其他域名,有的话就输入 y ,没有就输入 n 
5、是否添加防盗链,输入n
Do you want to add hotlink protection? [y/n]: n 
6、Allow Rewrite rule? [y/n]: y
7、Allow Rewrite rule? [y/n]: yPlease input the rewrite of programme :
wordpress,opencart,magento2,drupal,joomla,laravel,thinkphp,discuz,typecho,
ecshop rewrite was exist.(Default rewrite: other): thinkphp
8、输入 y ,开启日志Allow Nginx/Tengine/OpenResty access_log? [y/n]: y

nginx thinkphp 静态化

1、修改/usr/local/nginx/conf/rewrite/thinkphp.conf,

vim /usr/local/nginx/conf/rewrite/thinkphp.conf
文件内容如下;
location / {if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
修改为
location / {if (!-e $request_filename) {
rewrite ^/([0-9]+)$ /home/show/index?roomnum=$1 last;#rewrite ^/([0-9]+)$ /index.php?m=Show&a=index&roomnum=$1 last; 
#rewrite ^(.*)$ /index.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last; 
break;
}
}

2、然后创建pathinfo.conf文文件

touch /usr/local/nginx/conf/pathinfo.conf
vim /usr/local/nginx/conf/pathinfo.conf
然后输入以下内容并保存
set $real_script_name $fastcgi_script_name;if ($fastcgi_script_name ~ "(.+?\.php)(/.*)") {set $real_script_name $1;set $path_info $2;}fastcgi_param SCRIPT_FILENAME $document_root$real_script_name; 
fastcgi_param SCRIPT_NAME $real_script_name;fastcgi_param PATH_INFO $path_info;

3、然后编辑 /usr/local/nginx/conf/vhost/您的域名.conf 文件

vim /usr/local/nginx/conf/vhost/您的域名.conf编辑文件如下.location ~ \.php {#fastcgi_pass remote_php_ip:9000; 
fastcgi_pass unix:/dev/shm/php-cgi.sock; 
fastcgi_index index.php;
# include fastcgi_params; 
include fastcgi.conf;}
在include fastcgi.conf; 
下面面加入一句
include pathinfo.conf;

4.修改网站根目录为public

server {listen 80;server_name www.abc.com;access_log /data/wwwlogs/www.abc.com_nginx.log combined; 
index index.html index.htm index.php;root /data/wwwroot/www.abc.com/public;

5.然后修改/usr/local/php/etc/php.ini,搜索cgi.fix_pathinfo.把值从0改成1

vim /usr/local/php/etc/php.ini 
cgi.fix_pathinfo=1

部署直播程序

1.将代码包里面的web文件夹中的东⻄拷⻉到网站根目录。

举例说明:

假设您的站点为: www.abc.com

上传web端源码到网站根目录 比如 /data/wwwroot/www.abc.com/然后unzip解压源码即可

//改变读写权限
chmod -R 775 /data/wwwroot/www.abc.com/
//改变所属者和所属组
chown -R www:www /data/wwwroot/www.abc.com

2.还需修改几个文件:

<1>/data/wwwroot/www.abc.com/PhalApi/Config/app.php

'REDIS_HOST' => "redis地址",
'REDIS_AUTH' => "redis密码",
REDIS_PORT'=>"6379"/**
* 七牛相关配置*/'Qiniu' => array(//统一的key'accessKey' => '七牛accessKey',
'secretKey' => '七牛secretKey',
//自定义配置的空间
'space_bucket' => '七牛空间名',
'space_host' => '七牛上传地址',
),
/*** 本地上传*/'UCloudEngine' => 'local',/*** 本地存储相关配置( UCloudEngine为local时的配置)
*/'UCloud' => array(//对应的文件路径'host' => 'http://域名/api/public/upload')

<2>/data/wwwroot/www.abc.com/PhalApi/Config/dbs.php

'servers' => array('db_appapi' => array( //服务器标记 
'host' => '数据库地址', //数据库域名 
'name' => '数据库名', //数据库名字'user' => '数据库用户名', //数据库用户名 
'password' => '数据库密码', //数据库密码 
'port' => '数据库端口号', //数据库端口 
'charset' => '数据库编码', //数据库字符集

<3>/data/wwwroot/www.abc.com/data/config/database.php

return array('type' => 'mysql','hostname' => '数据库地址', 
'database' => '数据库名称', 
'username' => '数据库账户', 
'password' => '数据库密码', 
'hostport' => '数据库端口', 
'DB_PREFIX' => 'cmf_',/* redis */'REDIS_HOST' => "redis地址", 
'REDIS_AUTH' => "redis密码", 
'REDIS_PORT' => "redis端口",
);

服务重启

注释掉这个文件【02-opcache.ini】的内容

/usr/local/php/etc/php.d/02-opcache.ini

这个PHP缓存,开发测试阶段需要关闭否则会影响问题的修改和测试偏差。

清理掉web缓存/data/wwwroot/www.abc.com/data/runtime/目录下的文件清空

systemctl restart php-fpm 
systemctl restart nginx 
systemctl restart redis-server 
systemctl restart mysqld

六、nodejs部署

1.下载nvm一键安装脚本

curl -o- 
https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash

2.然后查看~/.zshrc文件,会看到入如下几行

//查看zshrc文件中是否添加
cat ~/.zshrc
//若没有,则手动添加
vim ~/.zshrc
//添加内容
export NVM_DIR="$HOME/.nvm"[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

3.重新载入配置文件

source~/.zshrc

4.然后安装nodejs(安装最新稳定版 node)

nvm install stable

如果此命令安装失败,可以先nvm ls ,先看下最新版本,然后直接安装最新版 nvm install xxx

5.输入如下命令,如果返回的是版本号,就说明nodejs安装成功

node-v

6.然后安装cnpm

注:只有国内服务器,才安装cnpm,执行下面的命令。国外服务器跳过。

npm install -g cnpm --registry=https://registry.npm.taobao.org

7.然后安装pm2

//国内服务器选执行如下
cnpm install pm2 -g
//国外服务器执行如下
npm install pm2 -g

8.安装nodejs拓展块

删除 /data/wwwroot/www.abc.com(自己创建的站点)/node/node_modules
cd /data/wwwroot/www.abc.com(自己创建的站点)/node 
rm -rf node_modules
//推荐国外服务器使用
npm install
# npm install md5-node
# npm install node-schedule
或者
//国内服务器使用命令
cnpm install

9.修改配置文件,将node目录下的config.js文件里面的信息修改为自己的

cd /data/wwwroot/www.abc.com(新建的站点)/node 
vim config.js
内容如下:
'REDISHOST' : 'redis地址',
'REDISPASS' : 'redis密码',
'REDISPORT' : '6379',
'TOKEN' : '1234567',
'WEBADDRESS': 'http://www.abc.com(自己的域名)/appapi/'
vim exposure.js
var site='http://www.abc.com';

10.然后,启动nodejs程序

pm2 start s1.js --watch
pm2 start exposure.js --watch

11.保存pm2启动信息

pm2 save

12.设置开机启动

pm2 startup

七、后台信息配置需要修改的地

1.系统设置--->公共配置--->网站信息,修改为你自己的域名 http://www.abc.com

云豹直播搭建文档  第5张

2.系统设置--->私密设置--->直播配置,填写聊天服务地址,修改为http://www.abc.com:19967

云豹直播搭建文档  第6张

3.系统设置--->私密设置--->直播配置,填写视频推拉流地址(即视频cdn)

4.七牛云信息填写

云豹直播搭建文档  第7张

恭喜你,搭建完成!

获取原版文档:

附原文档一份,方便校对

此处为隐藏内容,请评论后刷新页面查看,谢谢!

文章目录
  • 一 、搭建前期准备
  • 二、搭建LNMP环境
  • 三、redis配置
    • 配置redis密码
    • 重启redis
  • 四、创建数据库
  • 五、web站点搭建
    • nginx thinkphp 静态化
    • 部署直播程序
      • 1.将代码包里面的web文件夹中的东⻄拷⻉到网站根目录。
      • 2.还需修改几个文件:
    • 服务重启
  • 六、nodejs部署
    • 1.下载nvm一键安装脚本
    • 2.然后查看~/.zshrc文件,会看到入如下几行
    • 3.重新载入配置文件
    • 4.然后安装nodejs(安装最新稳定版 node)
    • 5.输入如下命令,如果返回的是版本号,就说明nodejs安装成功
    • 6.然后安装cnpm
    • 7.然后安装pm2
    • 8.安装nodejs拓展块
    • 9.修改配置文件,将node目录下的config.js文件里面的信息修改为自己的
    • 10.然后,启动nodejs程序
    • 11.保存pm2启动信息
    • 12.设置开机启动
  • 七、后台信息配置需要修改的地
  • 获取原版文档:
  • 发表评论