标签:nginx

发表于
如题,Jenkins前端用Nginx做了代理。 万分恼怒的是正在配置Jenkins任务,保存时确报出个"No valid crumb was included in the request"的错误,东西都没存住,杀人的心都有了。 如何修改呢? 首先,修改jenkis的启动配置,centos下是: JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Dhudson.security.csrf.requestfield=crumb" 然后,修改Nginx配置: ... server { listen 80; server_name build.xxx.com; ignore_invalid_headers off; ......
发表于
技术实现很简单: nginx分发请求的时候,upstream是由lua从redis中读取配置动态生成的。 装好nginx+lua,过程不表。 把lua redis的模块配到路径中 wget https://raw.github.com/nrk/redis-lua/version-2.0/src/redis.lua nginx配置如下: server { listen 80; server_name _; server_name_in_redirect off; port_in_redirect off; root /root/html; location / { set $upstream ""; rewrite_by_lua ' -- load global route cache...
发表于
公司的线上环境分为预发布和正式两个部分。 其实两个部分是在一起的。 这样怎么分发呢? 用Nginx即可,如果是公司来的某个固定ip,则分发到预发布,如果不是,就走正式环境。这样测试就简单多了,运维统一设置一个无线wifi,接入这个wifi就走某个固定ip,到的全是预发布环境,不用这个wifi就走正式环境,非常方便测试。 用lua进行分发: location / { content_by_lua ' myIP = ngx.req.get_headers()["X-Real-IP"] if myIP == nil then myIP = ngx.req.get_headers()["x_forwarded_for"] end if myIP == nil then myIP = ngx.var.remote_addr end if...