问题
如果有大量的web服务需要加上跟踪或者统计的js脚本,或者我们不希望修改业务服务源码来实现这类的附加功能,能不能在服务器渲染的html中注入相关的脚本。
处理
nginx的ngx_http_sub_module模块可以实现这类功能。
我使用的nginx docker版本为1.19.10,是默认启用了ngx_http_sub_module的,免去了编译的麻烦,直接搞
# 查看nginx加载的模块
docker exec nginx nginx -V
添加如下配置
server {
......
sub_filter <head> '<head><script async defer data-domain="你的服务域名" src="https://你的plausible服务域名/js/plausible.js"></script>';
sub_filter_once on;
......
}
# 重新加载nginx配置
docker exec nginx nginx -s reload
参考
http://nginx.org/en/docs/http/ngx_http_sub_module.html
https://docs.appdynamics.com/display/PRO21/Injection+Using+Nginx
Be First to Comment