前言

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安装的更多相关文章

  1. 关于SQL Server 安装程序在运行 Windows Installer 文件时遇到错误

    前几日安装sql server2008r2 的时候碰到这个问题: 出现以下错误: SQL Server 安装程序在运行 Windows Installer 文件时遇到错误. Windows Insta ...

  2. Ubuntu Server安装R和Rstudio(zz)

    Ubuntu Server安装R和Rstudio 发表于 技术天堂 2014-03-15 21:03 字数: 534 阅读量: 205 R是一个在科研领域很常用的工具,经常用R的年轻人或者经常上统计之 ...

  3. linux下subversion server安装手册

    linux下subversion server安装手册 安装基于的Linux版本为:Red Hat Enterprise Linux Server release 6.3. 一 准备需要的安装包. ( ...

  4. SQL Server 安装 功能详解

    安装 SQL Server 功能     在“功能选择”页上,SQL Server 功能分为以下两个主要部分:实例功能和共享功能. “实例功能”表示为每个实例安装一次的组件,这样,您将具有它们的多个副 ...

  5. VMware vCenter Server安装图解教程

    安装说明: 1.安装VMware vCenter Server的主机操作系统为:Windows Server 2008 R2 2.在Windows Server 2008 R2中需要预先安装好SQL ...

  6. cmd运行sql server安装

    cmd运行sql server安装 SQL2012非群集安装_更新到最新版本.bat setup.exe /UpdateSource=.\hotfix\Latest /ACTION="Ins ...

  7. Ubuntu Server安装图形界面全过程

    转载自:http://blog.csdn.net/sunbaigui/article/details/6624110, http://mikewolfli.blog.163.com/blog/stat ...

  8. ArcSDE for SQL Server安装及在ArcMap中创建ArcSDE连接

    原文:ArcSDE for SQL Server安装及在ArcMap中创建ArcSDE连接 安装ArcSDE for SQL Server,最后一步成功后的界面如下: 在ArcMap中创建ArcSDE ...

  9. SQL Server安装完成后3个需要立即修改的配置选项(转载)

    你用安装向导安装了全新的SQL Server,最后你点击了完成按钮.哇噢~~~现在我们可以把我们的服务器进入生产了!抱歉,那并不是真的,因为你的全新SQL Server默认配置是错误的. 是的,你没看 ...

随机推荐

  1. PHP 如何成长 (收藏自:http://www.cnblogs.com/try-better-tomorrow/p/6964036.html)

    原文题目为<php程序员学C/C++>,不过我觉得说是提升自己比较合适. 身边有几个做PHP开发的朋友,因为面试,也接触到不少的PHP工程师,他们常疑虑自己将来在技术上的成长与发展,我常给 ...

  2. MySQL中数据中设计中的范式与反范式

    设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小.但是有些时候一昧的追求范式减少冗余,反而会降低数据读写 ...

  3. centos部署jenkins服务

    1 添加jenkins repo源 [root@WebVirtMgrWeb ~]# wget -O /etc/yum.repos.d/jenkins.repo http://jenkins-ci.or ...

  4. HTTP 状态码简介(对照)

    HTTP状态码 当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求.当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应 ...

  5. mac安装yarn , MAC升级Nodejs

    Npm i -g yarn 第一步,先查看本机node.js版本: `$ node -v` 第二步,清除node.js的cache: `$ sudo npm cache clean -f` 第三步,安 ...

  6. 修改Linux的基本配置(修改主机名修改ip地址安装JDK/Tomcat/MySQL等等)

    (一)基本操作修改 修改主机名 vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=server1.itcast.cn 修改ip地址 vi /etc/s ...

  7. NumPy基础知识:数组和矢量计算

    NumPy 的ndarray:一种多维数组对象 该对象是一个快速且灵活的大数据容器,可以利用这种数组对整个数据进行科学计算,语法跟标量元素之间的计算一样. 创建ndarray的方法: array函数: ...

  8. PHP下使用Redis消息队列发布微博

    phpRedisAdmin :github地址  图形化管理界面 git clone [url]https://github.com/ErikDubbelboer/phpRedisAdmin.git[ ...

  9. iOS 关于 Missing iOS Distribution signing identity for.... 等 打包 校验 出现的事故 处理经验

    着实郁闷了一阵子,不知道为什么 证书和配置文件都没有问题 在Archieve后  validate 提示:"Missing iOS Distribution signing identity ...

  10. Rabbitmq消费失败死信队列

    Rabbitmq 重消费处理 一 处理流程图: 业务交换机:正常接收发送者,发送过来的消息,交换机类型topic AE交换机: 当业务交换机无法根据指定的routingkey去路由到队列的时候,会全部 ...