Nginad Server安装
前言
Nginad是一个基于php的开源项目,它既可以作为静态配置的Ad Server,也可以作为动态的RTB Exchange使用。代码结构比较直接明了,挺适合用作学习的。本文如果有理解错误的地方,希望各位不吝指正。
概要
我在14年10月份接触RTB领域的时候,开始搭建RTBKit + Nginad的实时竞价环境,搭建过程中就觉得Nginad的文档非常凌乱,东一块西一块,当时就写下这些内容供以后参考。最近看官网貌似也提供了比较完整的安装文档。有兴趣的人可以直接阅读官网文档。
环境配置
配置好你的nginx + php + mysql环境,这个我就不赘述了,请自行搜索。
下载nginad
从git上下载nginad, 将upload文件夹下面的东西复制到nginx的web目录里。
git clone https://github.com/nginadfoundation/nginad.git
然后将里面的upload目录放到nginx web目录下。
安装项目
在upload目录下调用php的包管理安装依赖库
composer.phar self-update
composer.phar install
配置文件
在config/autoload下有很多配置文件*.php.dist,请将后面的.dist后缀去掉。
cd config/autoload
cp database.local.php.dist database.local.php
cp delivery.local.php.dist delivery.local.php
cp email.local.php.dist email.local.php
cp rtb.config.local.php.dist rtb.config.local.php
配置数据库
配置数据库请参见链接。主要就是新建nginad所需要的各种表。官网页面有很多操作,我是在ubuntu系统上安装的,如果前述mysql+php+nginx环境已经配好了,只需要执行:
mysql -u root -p //登陆mysql
create database nginad;
grant usage on *.* to nginad@`%` identified by 'password';
grant all privileges on nginad.* to nginad@`%` ;
flush privileges;
quit; //创建数据库,给予权限
然后下载sql脚本(这个脚本可能会过期,还是从配置数据库的官网页面上下载比较好),接着执行:
mysql -u nginad -p nginad < [刚刚下载的sql脚本]
最后,修改nginad upload所在目录下/config/autoload/database.local.php文件
$dbParams = array(
'dbname' => 'nginad',
'user' => 'root',
'pass' => '',
'host' => 'localhost',
);
请填入正确的数据库连接参数。
修改public/ad/nginad.js
修改该js文件中的第一行代码
var adserver_domain = ""
改成你部署nginad server所在的domain,这段脚本会向这个地址请求广告物料。
启动
这里还有一点奇怪的,我不知道nginad server启动的管理员默认账号密码是什么。。。好像也没看到哪里有说,(真坑爹)。
我的解决方案是,反正数据库在手,我自己在table里硬编码写进去了一个管理员账号密码。。。(密码是加密的,不知道怎么填?请先注册一个publisher之类的账号,密码写个test,然后去DB里看test被加密成了什么字符串,把相同的字符串写到管理员账号的密码里,管理员的密码也就是test了,nginad的加密没有用salt,不算很安全啊..)
更新:现在知道了。。是:
默认管理员
username: admin@localhost
password: password
默认publisher
username: sergey.page@blowmedianow.com
password: password
Nginad Server安装的更多相关文章
- 关于SQL Server 安装程序在运行 Windows Installer 文件时遇到错误
前几日安装sql server2008r2 的时候碰到这个问题: 出现以下错误: SQL Server 安装程序在运行 Windows Installer 文件时遇到错误. Windows Insta ...
- Ubuntu Server安装R和Rstudio(zz)
Ubuntu Server安装R和Rstudio 发表于 技术天堂 2014-03-15 21:03 字数: 534 阅读量: 205 R是一个在科研领域很常用的工具,经常用R的年轻人或者经常上统计之 ...
- linux下subversion server安装手册
linux下subversion server安装手册 安装基于的Linux版本为:Red Hat Enterprise Linux Server release 6.3. 一 准备需要的安装包. ( ...
- SQL Server 安装 功能详解
安装 SQL Server 功能 在“功能选择”页上,SQL Server 功能分为以下两个主要部分:实例功能和共享功能. “实例功能”表示为每个实例安装一次的组件,这样,您将具有它们的多个副 ...
- VMware vCenter Server安装图解教程
安装说明: 1.安装VMware vCenter Server的主机操作系统为:Windows Server 2008 R2 2.在Windows Server 2008 R2中需要预先安装好SQL ...
- cmd运行sql server安装
cmd运行sql server安装 SQL2012非群集安装_更新到最新版本.bat setup.exe /UpdateSource=.\hotfix\Latest /ACTION="Ins ...
- Ubuntu Server安装图形界面全过程
转载自:http://blog.csdn.net/sunbaigui/article/details/6624110, http://mikewolfli.blog.163.com/blog/stat ...
- ArcSDE for SQL Server安装及在ArcMap中创建ArcSDE连接
原文:ArcSDE for SQL Server安装及在ArcMap中创建ArcSDE连接 安装ArcSDE for SQL Server,最后一步成功后的界面如下: 在ArcMap中创建ArcSDE ...
- SQL Server安装完成后3个需要立即修改的配置选项(转载)
你用安装向导安装了全新的SQL Server,最后你点击了完成按钮.哇噢~~~现在我们可以把我们的服务器进入生产了!抱歉,那并不是真的,因为你的全新SQL Server默认配置是错误的. 是的,你没看 ...
随机推荐
- c语言 常用知识点
强制类型转换 (int)(x+y) 输入 scanf("a=%f,b=%f",&a,&b); a=1,b=1 char a; a=getchar(); 输入一个字 ...
- jetty;linux 目录结构
[说明]今天看了看jetty这个web容器,上午看基础理论框架知识(后面半点没用到),下午下载了jetty,并且在上面部署了一个war应用,晚上在做eclipses整合jetty的时候出现了问题,下载 ...
- 【BZOJ1820】[JSOI2010]Express Service 快递服务 暴力DP
[BZOJ1820][JSOI2010]Express Service 快递服务 Description 「飞奔」快递公司成立之后,已经分别与市内许多中小企业公司签订邮件收送服务契约.由于有些公司是在 ...
- &#x编码转换成汉字
import java.io.UnsupportedEncodingException; public class UnicodeDecoder { public static String esca ...
- 你意识到苹果公司已经抛弃了GC吗?
为什么移动Web应用程序很慢(译) - tangzhnju - 博客园 http://www.cnblogs.com/codemood/p/3213459.html
- Distance matrix
w https://en.wikipedia.org/wiki/Distance_matrix For example, suppose these data are to be analyzed, ...
- JavaScript获取地址栏内容
例如地址为:http://www.mazey.net/baby/blog/index.php?a=1&b=2#c var query = window.location.href; //htt ...
- Display BLOBs and CLOBs (DB2可视化工具AQT )
Displaying BLOBs and CLOBs Dealing with LOBs BLOB and CLOB columns are difficult to display because: ...
- Vue父组件调用子组件的方法
vue中如果父组件想调用子组件的方法,可以在子组件中加上ref,然后通过this.$refs.ref.method调用,例如: 父组件: <template> <div @click ...
- 编译java-cef
javacef即java Chromium Embedded Framework,其功能是通过在java应用中嵌入谷歌浏览器内核Chromium. 编译java-cef的过程可参考以下文档及视频: h ...