Revive Adserver 6.0.8 配置参数详解

详解 Revive Adserver 6.0.8 的 var/<主机名>.conf.php 配置体系:加载与主机名路由机制、49 个配置组逐项参数说明、插件配置区、修改生效方式与常见问题。

Revive AdserverRevive Adserver广告投放2026/10/29

Revive Adserver 6.0.8 配置参数详解

目标:详解 Revive Adserver 6.0.8 安装向导生成的全局配置文件(var/<主机名>.conf.php)的体系结构、加载机制与全部配置组参数,并给出手工修改配置的正确姿势与常见问题。文中所有参数值均取证自实测安装(2026-10-29,全新安装向导产物),源码行号取证自 6.0.8 源码包。安装过程见本站《Ubuntu 22.04 安装 Revive Adserver 6.0.8 指南》。

一、环境信息

项目内容
软件版本Revive Adserver 6.0.8(schema 628)
配置文件/var/www/revive-adserver/var/10.89.71.2.conf.php
文件大小 / 配置组数8427 字节 / 49 个 section
生成方式Web 安装向导 finish 步骤自动写入
访问主机名10.89.71.2(决定配置文件名)
取证日期2026-10-29

💡 Revive Adserver 没有全局统一的 conf.ini.php:配置文件按"访问主机名"逐主机命名,这是它多主机部署设计的核心。本文以 10.89.71.2.conf.php 为蓝本讲解,你机器上的文件名以实际访问主机名为准。

二、配置体系与加载机制

2.1 var/ 目录的物理布局

安装完成后 var/ 目录与配置相关的文件(实测清单):

10.89.71.2.conf.php   ← 主配置文件(按主机名命名)
default.conf.php      ← 兜底指针文件
.htaccess             ← Web 访问拦截
debug.log             ← 调试日志([log] 段定义)
install.log           ← 安装/升级日志
INSTALLED             ← 安装完成标记(0 字节)
UPGRADE               ← 安装/升级触发标记(安装完成后被自动删除)
cache/                ← 菜单、权限、投递函数等运行时缓存
plugins/              ← 插件运行时数据
templates_compiled/   ← 模板编译产物

三道防直读设计(实测取证):

  1. var/.htaccess 内容为 Require all denied(Apache 2.4 段),直接拒绝一切 Web 访问;
  2. 配置文件首行是 ;<?php exit; ?>——对 INI 解析器它是注释,对 PHP 引擎是立即退出指令,即便 .htaccess 失效也不会泄露内容;
  3. 文件第二行注释 ;*** DO NOT REMOVE THE LINE ABOVE *** 提醒不可删除首行。

2.2 主机名路由:配置文件如何被选中

加载逻辑在 init-parse.php(实测逐行取证),规则有三层:

  1. 取当前访问主机名:Web 请求取 $_SERVER['HTTP_HOST'];命令行取 $GLOBALS['argv'][1](即 CLI 第一个参数)。命令行缺参直接抛异常,实测报错原文:
Revive Adserver was called via the command line, but had no host as a parameter.
  1. 优先加载 var/<主机名>.conf.php(init-parse.php 第 92 行起);
  2. 主机配置不存在时回退到 var/default.conf.php——这个文件只有一个键 realConfig,指向真正生效的配置(实测内容):
;<?php exit; ?>
;*** DO NOT REMOVE THE LINE ABOVE ***
realConfig="10.89.71.2"

若主机配置文件存在且带 realConfig 键,则把它当作"覆盖层",与 realConfig 指向的配置合并后生效(第 101~113 行)。这个机制支持一台服务器多个投放域名共享一份主配置。

2.3 语法与取值约定

  • 标准 INI 格式,[section] 分组,key=value;; 开头为注释;
  • 空值(如 persistent=)表示"未启用/取默认";1 为启用,0 为关闭;
  • 含特殊字符的值带双引号,如 fromAddress="admin@example.com";
  • [plugins]、[pluginGroupComponents] 的 键=1 是"该插件/组件已启用"的注册表。

三、核心配置组逐项详解

3.1 [openads]——安装状态与 SSL

参数实测值说明
installed1已安装标记,与 var/INSTALLED 呼应;安装判定(OA_Upgrade::isFreshInstall())同时检查它
requireSSL(空)强制后台走 HTTPS;生产暴露公网时建议设 1
sslPort443HTTPS 端口

3.2 [ui]——管理界面

参数实测值说明
enabled1总开关
applicationName(空)界面显示的应用名,空则用 "Revive Adserver"
headerFilePath / footerFilePath / logoFilePath(空)自定义页头/页脚/Logo 的文件路径,做白标(去除官方品牌)时用
headerForegroundColor / headerBackgroundColor / headerActiveTabColor / headerTextColor(空)顶栏配色
gzipCompression1后台页面 gzip 压缩
combineAssets1合并 CSS/JS 请求
dashboardEnabled1首页仪表盘
hideNavigator(空)隐藏左侧导航(演示/只读场景)
zoneLinkingStatistics1区域关联统计
disableDirectSelection1关闭"直接选择"模式
displayNameLength60实体名称显示截断长度
loaderDelay250加载动画延迟(毫秒)

3.3 [database] 与数据库家族——连接参数

实测值(安装向导写入):

[database]
type=mysqli
host=localhost
socket=
port=3306
username=admin
password=q1w2e3r4
name=revive_db
persistent=
protocol=tcp
compress=
ssl=
capath=
ca=
参数说明
type驱动:mysqli 或 pgsql
host / port / socket连接目标;socket 非空时走 Unix socket
username / password业务账号,向导里填的就是它(务必与数据库端授权一致)
name库名
persistent1 = 长连接(高并发投放可开,注意与 MySQL 的 wait_timeout 配合)
compress1 = 客户端协议压缩(跨机房 DB 才有意义)
ssl / capath / caTLS 连接数据库的证书配置

配套段:

段参数实测值说明
[databaseCharset]checkComplete1字符集检查已完成(utf8mb4 库在安装时自动核验)
[databaseCharset]clientCharset(空)强制客户端字符集
[databaseMysql]statisticsSortBufferSize(空)统计汇总排序缓冲(大库统计变慢时可调大)
[databasePgsql]schema(空)PostgreSQL 模式名

3.4 [webpath]——三个入口的 URL

[webpath]
admin="10.89.71.2/admin"
delivery="10.89.71.2/delivery"
deliverySSL="10.89.71.2/delivery"
images="10.89.71.2/images"
imagesSSL="10.89.71.2/images"

admin/delivery/images 分别是后台、投递引擎、素材库的基准 URL(SSL 版本另配)。这些值直接写进生成的广告调用代码,也决定 CLI 的 host 参数——改动它等于"搬家",需要同步更新已分发的调用代码。

3.5 [file]——投递端点文件名映射

把"逻辑端点"映射到 www/delivery/ 下的 PHP 文件名(共 20 项,实测全表):

逻辑名文件用途
viewavw.php广告展示(最常用)
clickck.php点击跳转
signedClickcl.php签名点击(防伪)
loglg.php原始日志打点
frameafr.phpiframe 方式调用
jsajs.phpJS 方式调用
imageai.php图片方式调用
popupapu.php弹窗
layeral.php浮层
contentac.php内容投放
conversionvars / conversion / conversionjstv.php / ti.php / tjs.php转化跟踪三件套
singlepagecallspc.php单页多广告位调用
spcjsspcjs.phpSPC 的 JS 库
asyncjs / asyncjsjs / asyncspcasyncjs.php / async.js / asyncspc.php异步调用族
frontcontrollerfc.php投递前端控制器
xmlrestax.phpXML-RPC/REST 调用

改这些名字等同于"给端点改名",改完必须重新编译投递引擎(见第五节)。

3.6 [store]——广告素材存储

参数实测值说明
mode00 = 本地存储(webDir);1 = 外部 FTP
webDir/var/www/revive-adserver/www/images本地素材目录(须在 Web 根下可访问)
ftpHost / ftpPath / ftpUsername / ftpPassword / ftpPassive(空)mode=1 时的 FTP 参数
maxFilesize0上传大小上限(0 = 不限,实际仍受 PHP upload_max_filesize 约束)

3.7 [allowedBanners]——允许的广告类型

参数实测值说明
sql(空)SQL 广告类型(直接存 SQL 查询),风险较高默认关
web1本地上传图片/Flash
url1外链图片
html1自定义 HTML(含第三方联盟代码)
text1文字广告
video1视频(VAST,随 apVideo 插件启用)

3.8 [delivery]——投递引擎(最核心的一组)

参数实测值说明
cacheExpire1200投递缓存有效期(秒,即 20 分钟)。投放数据不是实时的根源就在这——调小可提高实时性,代价是 DB 压力
cacheStorePlugindeliveryCacheStore:oxCacheFile:oxCacheFile缓存后端;装了 oxMemcached 插件后可切 memcached(对应 [oxMemcached] 段)
cachePath(空)文件缓存自定义路径(空 = var/cache/)
acls1投递时执行定向条件(频次、地域、时间等),关闭可提速但定向失效
aclsDirectSelection1直接选择模式下也执行定向
obfuscate(空)混淆点击 URL(隐藏目标地址)
ctDelimiter / chDelimiter__ / ","URL 变量分隔符(campaignid=__campaignid__ 风格)
keywords(空)全局附加关键词
ecpmSelectionRate0.9eCPM 优化在可选广告中的介入比例(0~1)
enableControlOnPureCPM1允许对纯 CPM 合同做控量
assetClientCacheExpire3600投递 JS 资产的浏览器缓存时间(秒)
secretO4Np/QcjL+DnO+bcblHI3ScMGVyW4afxbGdN4JZv978=(演示值)签名/防伪密钥(签名点击 cl.php 用),安装时随机生成,不要外泄、不要随意更换
clickUrlValidity0点击 URL 有效期(秒,0 = 不限)
relAttributenoopener nofollow广告链接 rel 属性(SEO/安全)
relPreconnect(空)预连接提示
cgiForceStatusHeader(空)CGI 模式强制状态头

3.9 [privacy]——访客隐私

参数实测值说明
disableViewerId1不发/不读访客唯一 ID Cookie(OAID)
anonymiseIp1日志中匿名化 IP 尾段

两个默认就是开的,符合 GDPR 友好方向;关闭它们可获得更完整的访客画像与地域统计,需自行评估合规。

3.10 [logging]——投递日志

参数实测值说明
adRequests(空)记录广告请求原始日志(6.x 默认关,开库压力大)
adImpressions / adClicks1 / 1记录曝光/点击原始日志
trackerImpressions1记录跟踪器曝光
reverseLookup(空)日志时反解 IP 为域名(慢,别开)
proxyLookup1识别 X-Forwarded-For 等代理头取真实 IP
defaultImpressionConnectionWindow / defaultClickConnectionWindow(空)曝光/点击归因窗口默认值
ignoreHosts / ignoreUserAgents(空)过滤内网主机/爬虫 UA(多值用 | 分隔)
enforceUserAgents(空)反向白名单:仅记录匹配 UA
blockAdClicksWindow0点击去重窗口(秒)
blockInactiveBanners1已停广告的点击不记账

3.11 [maintenance]——维护调度

参数实测值说明
autoMaintenance1无 cron 时由投递端点顺带触发维护(有 cron 建议关掉避免重复开销)
timeLimitScripts1800维护脚本最长运行时间(秒)
operationInterval60操作间隔(分钟),统计聚合的基本时间片;安装后不建议修改(会影响历史数据切分)
blockAdImpressions / blockAdClicks0 / 0同一访客对同一广告的曝光/点击拦截窗口(秒)
channelForecasting(空)频道预测
pruneCompletedCampaignsSummaryData(空)清理完结 campaign 的汇总数据
pruneDataTables1定期清理原始明细表(配合 operationInterval)
ecpmCampaignLevels9|8|7|6参与 eCPM 自动优化的合同优先级层

维护脚本本身的用法(含 host 参数)见本站《Revive Adserver 6.0.8 常用 CLI 命令与工具详解》。

3.12 [priority]——优先级引擎

参数实测值说明
instantUpdate1高优先级合同变化时立即重算投放权重(否则等下一次维护)
intentionalOverdelivery0允许高优先级合同超额投放
defaultClickRatio0.005无历史点击率时的默认 CTR(0.5%)
defaultConversionRatio0.0001默认转化率
randmax2147483647随机数上限(int32)

3.13 [table]——表前缀、存储引擎与表名映射

[table]
prefix=rv_
type=INNODB
参数说明
prefix全部数据表前缀(默认 rv_,实测库内 58 张表均以此开头)
type表存储引擎(INNODB)

该段余下 49 个键是"逻辑表名 → 实际表名"映射(如 banners=banners、clients=clients),只在你想给单张表改名/分表时才需要动。历史命名彩蛋:affiliates 是"网站/媒体位"、clients 是"广告主"——OpenX 时代的遗产(沿革见本站《Revive Adserver 介绍与选型指南》)。

3.14 [email]——系统邮件

参数实测值说明
logOutgoing1外发邮件记录到日志
fromAddressadmin@example.com发件人地址(向导填的 adminEmail)
fromName / fromCompany(空)发件人显示名/公司
headers / qmailPatch(空)附加头 / qmail 兼容补丁
useManagerDetails(空)用各广告代理经理自己的邮箱做发件人

注意:这只影响 PHP mail() 发件;要接 SMTP 需要 rvMailer 插件的配置段(第四节)。

3.15 [log]、[deliveryLog] 与 [debug]——三份日志

段关键参数实测值说明
[log]enabled / type / name1 / file / debug.log应用调试日志 var/debug.log
[log]priority6PEAR Log 等级:6=INFO。排障时可临时调 7(DEBUG)
[log]fileMode0644日志文件权限
[deliveryLog]enabled(空)独立投递日志开关(默认关,投递日志走 [logging] + 数据库)
[debug]production1生产模式(不向前端吐错误详情)
[debug]sendErrorEmails / email(空)/ email@example.com错误邮件推送
[debug]emailAdminThreshold3触发管理员邮件的错误等级阈值
[debug]errorOverride1屏蔽 PHP 错误输出到页面
参数实测值说明
permCookieSeconds31536000持久 Cookie 有效期(365 天)
maxCookieSize2048Cookie 上限(字节)
domain / viewerIdDomain(空)Cookie 作用域(跨子域投放时配置)
disabled(空)1 = 完全禁用 Cookie(隐私合规需求)

3.17 [var]——投递 URL 变量名映射

prefix=OA_ 定义 JS 变量前缀;其余 30 余项把"逻辑变量"映射到 URL/JS 参数名。投放侧最常用的一组(实测值):

逻辑名实际参数名用途
campaignId / adId / zoneIdcampaignid / bannerid / zoneid三要素定位
creativeIdcid素材 ID
destdest点击落地方
viewerIdOAID访客 ID
blockAd / capAd / sessionCapAdOABLOCK / OACAP / OASCAP频次控制的 URL 传递变量(阻断/限量/会话内限量,campaign/zone 两级同理)
traceOXTR跟踪标记

与 [file] 一样,改这里的名字会改变对外 URL 形态,改完要重编译投递引擎。

3.18 [lb]——数据库负载均衡

[lb]
enabled=
type=mysql
host=localhost
port=3306

默认关闭。启用后可把部分读请求分流到从库(host/port/username/password/name 填从库信息),大流量站点才需要。

3.19 [sync] 与 [oacSync]——官方版本检查

段参数实测值说明
[sync]checkForUpdates1后台首页检查新版本
[sync]shareStack1匿名上报运行环境统计(介意可关)
[oacSync]host / pathsync.revive-adserver.com /xmlrpc.php检查服务器地址

离线/内网部署建议把 checkForUpdates 置 0,避免后台等超时。

3.20 [authentication] 与 [security]——认证与密码策略

段参数实测值说明
[authentication]typeinternal内置账号体系(可换 IdN 插件做外部认证)
[authentication]deleteUnverifiedUsersAfter2419200未验证账号保留时长(秒,28 天)
[security]passwordMinLength12后台密码最短 12 位——与源码 lib/OA/Auth.php 的 DEFAULT_MIN_PASSWORD_LENGTH = 12 一致,安装向导的 "Too short" 拦截就是它(实测见安装指南 10.6 节)
[security]badLoginLogPath(空)暴力破解尝试日志路径

3.21 [geotargeting]——地域定向

参数实测值说明
type(空)地域库类型(装 MaxMind GeoIP2 插件后配 geotargeting 型插件)
showUnavailable(空)定向库不可用时是否展示广告

3.22 插件体系四段与 [audit]

段内容(实测)说明
[pluginPaths]packages=/plugins/etc/、plugins=/plugins/、admin=/www/admin/plugins/、var=/var/plugins/插件目录布局
[pluginSettings]enableOnInstall=1、useMergedFunctions=1装完即启用;合并投递函数提升性能
[plugins]openXBannerTypes、openXDeliveryLimitations、openXReports、openXDeliveryCacheStore、openXInvocationTags、openXDeliveryLog、openXVideoAds、reviveMailer、reviveMaxMindGeoIP2、apVideo 全部 =1向导安装的 10 个插件注册表
[pluginGroupComponents]oxHtml、oxText、Client、Geo、Site、Time、oxCacheFile、oxMemcached、oxLogClick、oxLogConversion、vast*、rvMailer*、rvMaxMindGeoIP2*、apVideo* 等 30 项插件内部组件细粒度注册表
[audit]enabled=1操作审计(后台 Changes 页可查谁改了什么)

四、插件自带配置组

以下 section 由插件安装时写入,属于"插件参数区":

段关键参数(实测值)说明
[deliveryHooks]postInit、cacheStore、cacheRetrieve、preLog、logClick、logConversion、logImpression、logRequest、logImpressionVast组件钩子注册表(投递引擎按它挂载插件逻辑),手工装卸插件后由系统重建
[Client]sniff=1客户端识别(浏览器/设备解析)
[oxCacheFile]cachePath=文件缓存路径(空 = var/cache/)
[oxMemcached]memcachedServers=、memcachedExpireTime=切换 memcached 缓存后端时填服务器列表
[oxInvocationTags]isAllowedAsync=1、isAllowedAdjs=1、isAllowedAdframe=1、isAllowedAdview=0、isAllowedAdviewnocookies=1可用的调用标签开关(avw 标签默认禁用)
[vastOverlayBannerTypeHtml]isVastOverlayAsTextEnabled=1 等 3 项VAST 浮层形态
[vastServeVideoPlayer]isAutoPlayOfVideoInOpenXAdminToolEnabled=0播放器自动播放
[rvMailerSMTP]tls=、hostname=localhost、port=25、user=、password=SMTP 投递(装 reviveMailer 后接外部邮件服务在这里配)
[rvMailerMailgun] / [rvMailerMandrill] / [rvMailerSendgrid]key=、domain=、region=、api=1三方邮件服务密钥
[rvMaxMindGeoIP2]mmdb_paths=、account_id=、license_key=MaxMind GeoIP2 数据库路径与许可证(地域定向的数据源)

五、修改与生效:正确的姿势

  1. 后台优先:绝大多数参数(界面、日志、维护、邮件等)在后台 Settings 界面修改即可,系统会自己写回 conf 文件并处理联动;
  2. 手工编辑 conf:直接改 var/<host>.conf.php 对下一次请求即时生效,但注意两类缓存——
    • 投递缓存(var/cache/,有效期 [delivery] cacheExpire=1200 秒):改投递相关参数后可清空 var/cache/ 立即生效;
    • 编译后的投递引擎(www/delivery/,由 www/delivery_dev/ 模板编译而来):凡涉及 [file]、[var]、[deliveryHooks] 这类"改变投递代码形态"的修改,必须重编译——php scripts/maintenance/delivery/rebuild.php <host>,实测会输出 STARTING TO RE-COMPILE THE DELIVERY ENGINE FILES(详见 CLI 指南);
  3. 改数据库口令:conf 的 [database] 与数据库端要同步改,改完可先跑一次 maintenance.php 验证连接;
  4. 备份:动手前 cp var/<host>.conf.php var/<host>.conf.php.bak(.bak 不会被加载,但注意它同样含敏感信息,别放进 Web 可访问目录)。

六、常见问题

6.1 用新域名访问,后台/投递行为异常

主机名路由(2.2 节)决定:用域名访问时若 var/<域名>.conf.php 不存在,会经 default.conf.php 的 realConfig 兜底到现有配置——系统不会报错,但 [webpath] 里仍是旧主机名,生成的广告代码全指向旧地址。正确做法:要么保持访问主机名与安装时一致,要么改 [webpath] 五项并同步更新已分发的广告代码。

6.2 CLI 工具报 "no host as a parameter"

CLI 没有 $_SERVER['HTTP_HOST'],必须显式传主机名(与 conf 文件名同名):php scripts/maintenance/maintenance.php 10.89.71.2。源码依据:init-parse.php 第 69 行 $_SERVER['HTTP_HOST'] = trim($GLOBALS['argv'][1])。

6.3 改了 cacheExpire/定向,投放行为没变

投递缓存未过期(默认 20 分钟)。清 var/cache/ 或等过期;涉及投递引擎形态的改动还要跑 delivery/rebuild.php(第五节)。

6.4 var/debug.log 暴涨

[log] priority=7(DEBUG)或 [ui] gzipCompression 异常时可能产生大量日志。生产保持 priority=6;排障完记得改回。

6.5 忘记后台密码

改密码不是改 conf(conf 里不存后台口令,口令在 rv_users 表做哈希)。用数据库管理员账号在后台登录页走密码找回([email] 邮件可用时),或临时建新管理员后重置。

七、参考链接