前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一个仿V2EX的开源二次元论坛程序:Vmoex安装教程

一个仿V2EX的开源二次元论坛程序:Vmoex安装教程

作者头像
砸漏
发布2020-10-28 16:24:58
2.3K0
发布2020-10-28 16:24:58
举报
文章被收录于专栏:恩蓝脚本

说明:Vmoex是一个仿V2ex的开源二次元向的社区程序,使用的php框架symfony3.4版本,支持markdown,主要为动漫、二次元、番剧的(还有萌萌哒的(●?ω`●)φ)爱好者打造。由于作者的安装教程对新手有点不是很友好,所以这里博主就发个详细的安装教程,有需求的可以搭建一个玩玩。

截图

请输入图片描述
请输入图片描述
请输入图片描述
请输入图片描述
请输入图片描述
请输入图片描述
请输入图片描述
请输入图片描述

安装

Github地址:https://github.com/yeskn-studio/vmoex-framework

环境要求:PHP 5.6+MysqlNginxRedisComposerNodejsFileinfo拓展等。

代码语言:javascript
复制
关于环境一些提示:
#由于作者留的数据库文件只兼容Mysql 5.6+,所以你内存如果超过1G,建议直接安装Mysql 5.6+;要是内存低于1G只能安装Mysql 5.5也没事,博主会提供兼容5.5的数据库文件。

#如果在Dev模式下运行是不需要Nginx的,不过不适合我们使用,所以下面主要使用Nginx的Web运行该程序。

1、安装宝塔

代码语言:javascript
复制
#Centos系统
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh
#Ubuntu系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && sudo bash install.sh
#Debian系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && bash install.sh

安装完成后,进入面板,点击左侧软件管理,然后安装PHP 5.6+NginxMysqlRedis

2、相关配置 找到左侧软件管理-PHP管理-设置-安装Fileinfo扩展。

代码语言:javascript
复制
#如果Fileinfo拓展安装失败,就是内存太小,我们可以添加swap,不适用于ovz

面板添加,找到左侧软件管理-系统工具-安装Linux工具箱,然后进入工具箱添加。

点击左侧软件管理-PHP设置-禁用函数-删除proc_openproc_get_status

点击左侧数据库-添加数据库,设置好数据库名、密码。

点击左侧网站-添加站点,数据库不创建,使用上面创建的即可。

3、安装Composer

代码语言:javascript
复制
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

4、安装依赖 安装Nodejs

代码语言:javascript
复制
#Debian、Ubuntu系统
curl -sL https://deb.nodesource.com/setup_10.x | bash -
apt-get install -y nodejs git

#CentOS系统
curl -sL https://rpm.nodesource.com/setup_10.x | bash -
yum install nodejs -y git

安装Bower

代码语言:javascript
复制
npm install -g bower

安装uglifyjs

代码语言:javascript
复制
npm install -g uglify-js

5、配置源码

代码语言:javascript
复制
#进入站点文件夹,路径自行修改后再运行
cd /www/wwwroot/www.zalou.cn
#下载源码
git clone https://github.com/yeskn-studio/vmoex-framework.git
#将源码文件移动到根目录,如果有提示,enter就行
mv vmoex-framework/{,.}* ./
#修改runtime目录权限
chown -R www:www var web/avatar
#修改配置文件,不会使用nano编辑器的,可以通过面板的文件管理进行操作
nano app/config/parameters.yml.dist

配置文件大致修改如下:

代码语言:javascript
复制
1、填入你的数据库名称,用户名和密码。
2、填入secret值,且secret必须是没有规则的一些字符,还是不会的,直接填数据库密码吧。
3、关于redis_dsn参数,这里是建议设置密码的,毕竟Redis有漏洞,如果你不会使用Redis的,直接修改为redis_dsn: 'redis://localhost'
4、修改socket_host参数,将127.0.0.1修改为你的服务器ip,不然会有小问题。
5、修改cdn地址,参数assets_base_url: https://www.zalou.cn,如果你开启SSL,就使用https,反之http
6、其它配置可根据你的需求自行开启。

6、开始安装 调整数据库文件:

代码语言:javascript
复制
#如果你安装的是Mysql 5.5版本数据库,需要先替换下源码的数据库文件,使用命令:
wget https://www.zalou.cn/usr/down/vmoex_sql -O var/data/vmoex.sql

#如果你是Mysql 5.6+,可以直接使用源码里的数据库文件。

然后开始安装,使用命令:

代码语言:javascript
复制
#安装php依赖,期间会提示配置,检查无误可一路回车
composer install
#安装前端依赖
bower install --allow-root
#导入数据
php bin/console doctrine:database:init
#修改管理员密码
php bin/console change-password -u admin -p [password]
#清理缓存
chown -R www:www var
php bin/console cache:clear --env=prod
#创建静态资源文件
php bin/console assetic:dump --env=prod
#启动websocket
php bin/push-service.php start -d

然后点击面板左侧安全,开放websocket3120端口即可。

7、Nginx设置 点击左侧网站-站点设置,进行如下修改:

代码语言:javascript
复制
1、网站目录:取消防跨站攻击,运行目录设置/web
2、伪静态:添加以下代码。
if (!-e $request_filename) {
    rewrite  ^(.*)$  /?$1  last;
    break;
}
3、默认文档:可以删除全部,然后添加app.php。
4、SSL等其他设置可自行修改

最后我们打开站点就可以看到一个萌萌哒的论坛了,历史帖子,评论什么的可以在后台自行删除。

配置文件

站点运行后,配置文件为app/config/parameters.yml, 需修改配置时请修改此文件,修改完后,需要重新清理缓存或者生成静态资源文件。

最后如果我们重启服务器后,还需要先开启websocket,使用命令:

代码语言:javascript
复制
#进入站点文件夹,路径自行修改后再运行
cd /www/wwwroot/zalou.cn
#启动websocket
php bin/push-service.php start -d
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-12-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 截图
  • 安装
  • 配置文件
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档