当前位置: 首页 > news >正文

自己的免费网站空间新媒体运营基础知识

自己的免费网站空间,新媒体运营基础知识,wordpress 标签 热门,深圳网上推广怎么做如果想要在nginx中打印出 http request 的所有 header,需要在编译nginx时开启 1、安装编译所需的依赖 apt-get install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev2、创建下载路径 mkdir -p /opt/download3、下载所需的文件 # 不要下载…

如果想要在nginx中打印出 http request 的所有 header,需要在编译nginx时开启
1、安装编译所需的依赖

apt-get install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

2、创建下载路径

mkdir -p /opt/download

3、下载所需的文件

# 不要下载官网http://luajit.org/download/的,要去下载openresty的优化版本 后面会说出现的坑
luajit: wget --no-check-certificate https://github.com/openresty/luajit2/archive/refs/tags/v2.1-20210510.tar.gz
lua-nginx-module: wget --no-check-certificate https://github.com/openresty/lua-nginx-module/archive/refs/tags/v0.10.20.tar.gz
lua-resty-core: wget --no-check-certificate https://github.com/openresty/lua-resty-core/archive/refs/tags/v0.1.22.tar.gz
lua-resty-lrucache: wget --no-check-certificate https://github.com/openresty/lua-resty-lrucache/archive/refs/tags/v0.11.tar.gz
tengine-2.3.2(nginx-1.17.3): wget --no-check-certificate http://tengine.taobao.org/download/tengine-2.3.2.tar.gz
ngx_devel_kit-0.3.1: wget --no-check-certificate https://github.com/vision5/ngx_devel_kit/archive/refs/tags/v0.3.1.tar.gz
openssl-1.1.1f: wget --no-check-certificate https://www.openssl.org/source/old/1.1.1/openssl-1.1.1f.tar.gz

解压所有文件

ls *.tar.gz | xargs -n1 tar xzvf

安装并添加luajit环境变量

cd luajit2-2.1-20210510
make install  PREFIX=/usr/local/LuaJIT
# 编辑环境便利文件
vim /etc/profile.d/lua.sh
export LUAJIT_LIB=/usr/local/LuaJIT/lib
export LUAJIT_INC=/usr/local/LuaJIT/include/luajit-2.1
# 引用环境变量
source /etc/profile.d/lua.sh 

安装lua_core

cd lua-resty-core-0.1.22
make install PREFIX=/usr/local/lua_core
cd ../lua-resty-lrucache-0.11
make install PREFIX=/usr/local/lua_core

编译安装 tengine(nginx)

cd tengine-2.3.2
./configure --prefix=/usr/local/nginx-1.17.3 --with-http_stub_status_module --with-http_gzip_static_module --with-select_module --with-poll_module --with-threads --with-file-aio --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_auth_request_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-stream --with-openssl=/opt/download/openssl-1.1.1f --add-module=/opt/download/lua-nginx-module-0.10.20 --add-module=/opt/download/ngx_devel_kit-0.3.1 --add-module=modules/ngx_http_upstream_check_module --add-module=modules/ngx_http_reqstat_module --add-module=modules/ngx_http_sysguard_module --add-module=modules/ngx_http_upstream_session_sticky_module --add-module=modules/ngx_http_user_agent_module --add-module=modules/ngx_slab_stat
make
make install

加载lua库,加入到ld.so.conf文件

cat  /etc/ld.so.conf.d/libc.conf
/usr/local/lib
/usr/local/LuaJIT/lib
# 加载
ldconfig

配置并测试lua环境

添加在http模块下
# 指定lua模块路径,多个之间";"分隔,其中";;"表示默认搜索路径,默认到nginx的根目录下找
lua_package_path "/usr/local/Lua_core/lib/lua/?.lua;;";
#指定server配置文件目录
include /usr/local/nginx-1.17.3/conf/conf.d/*.conf;
#自定义日志格式
log_format test escape=json '{''"time": "$time_iso8601", ''"server_name": "$host", ''"port": "$server_port", ''"method": "$request_method", ''"args": "$args", ''"uri": "$uri", ''"server_protocol": "$server_protocol", ''"status": "$status", ''"body_bytes_sent": "$body_bytes_sent", ''"upstream_addr": "$upstream_addr", ''"upstream_status": "$upstream_status", ''"upstream_response_time": "$upstream_response_time", ''"req_header": "$req_header"''}';

测试域名配置文件

server {listen 80;server_name www.test.com;access_log /var/log/nginx/www.test.com.access.log test;set $req_header "";header_filter_by_lua 'local h = ngx.req.get_headers()for k, v in pairs(h) dongx.var.req_header = ngx.var.req_header .. k.."="..v.." "end';location / {proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Host $http_host;# requset by yanshulproxy_intercept_errors on;error_page 301 = @success;proxy_pass http://172.17.64.32:31593;}location /lua {set $test "hello,world";content_by_lua 'ngx.header.content_type="text/plain"ngx.say(ngx.var.test)';}
}

启动nginx

/usr/local/nginx-1.17.3/sbin/nginx

curl 测试请求

curl 127.0.0.1/lua -H 'host: www.test.com' -H 'test: hjy'

日志

{"time": "2023-08-24T08:03:53+00:00", "server_name": "www.test.com", "port": "80", "method": "GET", "args": "", "uri": "/lua", "server_protocol": "HTTP/1.1", "status": "200", "body_bytes_sent": "22", "upstream_addr": "", "upstream_status": "", "upstream_response_time": "", "req_header": "test=hjy user-agent=curl/7.58.0 accept=*/* host=www.test.com "}

看到日志中 req_header 字段输出所有request header

http://www.yayakq.cn/news/561905/

相关文章:

  • 合肥 做网站的公司网站备案是自己可以做吗
  • 电脑路由器做网站服务器丰台电子网站建设
  • 企业制作网站服务电商网站开发参考文献
  • 开发网站的财务分析中国代理网官网
  • 做数学题的网站seo相关岗位
  • 中山手机网站开发年轻的儿媳
  • 网站用户体验优化方案宁波seo排名如何优化
  • 网站建设优化培训班网站建设部署与发布答案
  • 国外做兼职的网站有哪些珠海网站建设技术托管
  • php网站建设课程作业全国公示信用信息系统
  • 360建站模板知道域名怎么进入网站
  • 允许个人做动漫网站吗开一家代做网站的公司
  • 青浦练塘网站建设搜索引擎seo外包
  • wordpress 翻译主题广州网络seo公司
  • 网站建设新方向百度公司简介
  • 基于django的电子商务网站开发做网销的一天都在干嘛
  • 学校网站建设意义wordpress分类页不要显示全文
  • 成功做网站百度云盘网页登录入口
  • 做家教的网站官方网站做背景墙厂家
  • 四川法制建设网站企业年金400退休拿多少
  • 伪静态网站网站 目录写入权限进入百度网首页
  • 没有rss源的网站如何做rss订阅专业的seo排名优化
  • 网站开发使用哪种语言wordpress调用指定菜单
  • windows2008 网站部署网站开发主要包括的事项
  • 网站建设技能简单易做的网站
  • ai素材免费下载网站网站建设制作设计营销 大连
  • 简约风格的网站怎样注册企业邮箱
  • 电子商务网站与建设课件我在征婚网站认识一个做IT
  • 建立公司网站的重点网页加速器有哪些
  • 怎么做一个网站云南app广告联盟