共计 5631 个字符,预计需要花费 15 分钟才能阅读完成。
中文 英文 韩语 日语
MediaWiki 配置文件分享
MediaWiki 的配置文件位于/path/mediawiki/LocalSettings.php
以下是https://docs.guohao.asia/ 经脱敏的配置文件内容(修改配置前请务必做好备份)
<?php
# 防止直接通过网页访问
if (!defined( 'MEDIAWIKI') ) {exit;}
## 基本设置
$wgSitename = "null"; # 站点名称
$wgMetaNamespace = "Null"; # 站点命名空间
$wgScriptPath = ""; # 脚本路径
$wgServer = "https://docs.guohao.asia"; # 服务器地址
$wgResourceBasePath = $wgScriptPath; # 静态资源路径
$wgLogos = [
'1x' => "$wgResourceBasePath/resources/assets/logo.png", # 站点 logo
'icon' => "$wgResourceBasePath/resources/assets/logo.png",
];
## 用户和邮件设置
$wgEnableEmail = true; # 启用邮件功能
$wgEnableUserEmail = true; # 用户邮件通知
$wgEmergencyContact = ""; # 紧急联系邮箱
$wgPasswordSender = "x@xx.xxx"; # 密码发送者邮箱
$wgEnotifUserTalk = false; # 用户对话通知
$wgEnotifWatchlist = false; # 观察列表通知
$wgEmailAuthentication = true; # 启用邮件认证
## 数据库设置
$wgDBtype = "mysql"; # 数据库类型
$wgDBserver = "localhost"; # 数据库服务器
$wgDBname = "xxxx"; # 数据库名称
$wgDBuser = "xxxx"; # 数据库用户名
$wgDBpassword = "xxxx"; # 数据库密码
$wgDBprefix = "xxxx"; # 数据库表前缀
$wgDBssl = false; # 是否使用 SSL
$wgDBTableOptions = "ENGINE=InnoDB, DEFAULT CHARSET=binary"; # 数据库表选项
$wgSharedTables[] = "actor"; # 共享数据库表
## 缓存设置
$wgMainCacheType = CACHE_MEMCACHED; # 主缓存类型
$wgParserCacheType = CACHE_MEMCACHED; # 解析器缓存类型
$wgMessageCacheType = CACHE_MEMCACHED; # 消息缓存类型
$wgMemCachedServers = array("127.0.0.1:11211"); # Memcached 服务器地址
## 文件和上传设置
$wgEnableUploads = true; # 启用文件上传
$wgUseImageMagick = true; # 使用 ImageMagick 处理图片
$wgImageMagickConvertCommand = "/usr/bin/convert"; # ImageMagick 命令路径
$wgUseInstantCommons = false; # 是否使用即时共享图片
## 语言和时区设置
$wgLanguageCode = "zh-cn"; # 语言代码
$wgLocaltimezone = "PRC"; # 时区设置
## 安全和性能设置
$wgSecretKey = "26abb9898bb4cb347aa8cc71bcxxxxxxxxxxxxxxxx9824f6078771c5d40b0cb44765cf8bbf"; # 安全密钥
$wgAuthenticationTokenVersion = "1"; # 认证令牌版本
$wgUpgradeKey = "d0ddxxxx07b2xxxx"; # 升级密钥
## 版权和皮肤设置
$wgRightsPage = ""; # 版权页面
$wgRightsUrl = ""; # 版权链接
$wgRightsText = ""; # 版权文本
$wgRightsIcon = ""; # 版权图标
$wgDefaultSkin = "vector-2022"; # 默认皮肤
wfLoadSkin('MinervaNeue'); # 加载皮肤
wfLoadSkin('MonoBook');
wfLoadSkin('Timeless');
wfLoadSkin('Vector');
## 页脚和工具栏设置
unset($wgFooterIcons['poweredby']); # 去掉底部的 Powered by
$wgDefaultUserOptions['usebetatoolbar'] = 1; # 启用测试工具栏
## 访问和内容设置
$wgShowIPinHeader = false; # 不在头部显示 IP
$wgAllowHttpsExternalImages = true; # 允许外链 HTTPS 图片
$wgAllowCopyUploads = true; # 允许通过 URL 上传图片
$wgAllowExternalImages = true; # 允许外链图片
$wgFileExtensions = array('png','gif','jpg','jpeg','doc','ppt','pptx','pdf','docx','xls','xlsx','webp','svg','mp4','mp3'); # 允许的文件扩展名
$wgVerifyMimeType = false; # 不验证 MIME 类型
## 钩子和脚本设置
$wgHooks['BeforePageDisplay'][] = function( OutputPage &$out, Skin &$skin) {
// 添加 Mermaid.js 脚本
$out->addScript('<script src="https://cdnjs.cloudflare.com/ajax/libs/mermaid/10.9.1/mermaid.min.js" integrity="sha512-6a80OTZVmEJhqYJUmYd5z8yHUCDlYnj6q9XwB/gKOEyNQV/Q8u+XeSG59a2ZKFEHGTYzgfOQKYEBtrZV7vBr+Q==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>');
// 添加 Google AdSense 脚本
$out->addScript('<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-36xxxx78343xxxx0" crossorigin="anonymous"></script>');
// 添加统计代码
$out->addScript('<script type="text/javascript" src="//api.tongjiniao.com/c?_=7xxxx772xxxx819968" async></script>');
};
## 编辑和页面创建权限设置
$wgGroupPermissions['*']['edit'] = false; # 禁止未登录用户编辑
$wgGroupPermissions['*']['createpage'] = false; # 禁止未登录用户创建页面
$wgGroupPermissions['sysop']['edit'] = true; # 允许管理员编辑
$wgGroupPermissions['sysop']['createpage'] = true; # 允许管理员创建页面
## 移动和默认皮肤设置
wfLoadSkin('Citizen'); # 加载移动皮肤
$wgDefaultMobileSkin = 'citizen'; # 默认移动皮肤
## HTML 和内容安全策略设置
$wgContentSecurityPolicy = "
default-src 'self';
img-src 'self' https://*;
media-src 'self' https://www.guohao.asia https://blog.guohao.asia/ https://docs.guohao.asia;
script-src 'self';
style-src 'self';
";
$wgAllowIframeTag = true; # 允许 iframe 标签
$wgHTML5Video = true; # 启用 HTML5 视频
$wgRawHtml = true; # 允许解析 HTML
## 管理员权限设置
$wgGroupPermissions['sysop']['deleterevision'] = true; # 允许管理员删除修订记录
$wgGroupPermissions['sysop']['deletelogentry'] = true; # 允许管理员删除日志条目
## 邮件服务器设置
$wgSMTP = [
'host' => 'smtp-relay.brevo.com', # SMTP 服务器地址
'IDHost' => 'smtp-relay.brevo.com', # 通常是网站域名
'localhost' => 'smtp-relay.brevo.com', # 某些邮件服务器需要此参数
'port' => 587, # 连接到 SMTP 服务器的端口
'auth' => true, # 是否使用 SMTP 认证
'username' => 'xxxx8xxxx@smtp-brevo.com', # SMTP 认证用户名
'password' => 'xxxxMxxxxsxxxxpO' # SMTP 认证密码
];
## 未登录用户的缓存设置
$wgUseFileCache = true; # 启用文件缓存
$wgFileCacheDirectory = "$IP/images/cache"; # 文件缓存目录
$wgMainCacheType = CACHE_MEMCACHED; # 主缓存类型
$wgParserCacheType = CACHE_MEMCACHED; # 解析器缓存类型
$wgMessageCacheType = CACHE_MEMCACHED; # 消息缓存类型
$wgMemCachedServers = ['127.0.0.1:11211']; # Memcached 服务器地址
$wgSessionsInObjectCache = true; # 启用对象缓存会话
$wgSessionCacheType = CACHE_MEMCACHED; # 会话缓存类型
## 扩展设置
wfLoadExtension('SyntaxHighlight_GeSHi'); # 语法高亮扩展
wfLoadExtension('ImageMap'); # 图片地图扩展
wfLoadExtension('HeaderFooter'); # 页眉页脚扩展
wfLoadExtension('EmbedVideo'); # 视频嵌入扩展
wfLoadExtension('VisualEditor'); # 可视化编辑器扩展
wfLoadExtension('AdminLinks'); # 管理链接扩展
wfLoadExtension('Widgets'); # 小部件扩展
wfLoadExtension('Cite'); # 引用扩展
wfLoadExtension('ParserFunctions'); # 解析器函数扩展
wfLoadExtension('PageImages'); # 页面图片扩展
wfLoadExtension('Math'); # 数学公式扩展
wfLoadExtension('PdfHandler'); # PDF 处理扩展
wfLoadExtension('ImportOfficeFiles'); # 导入办公文件扩展
wfLoadExtension('MultimediaViewer'); # 多媒体查看器扩展
wfLoadExtension('OATHAuth'); # OATH 认证扩展
?>
了解 一个 HR 的更多信息
订阅后即可通过电子邮件收到最新文章。
正文完