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

国内较好的网站开发商城开创集团网站建设

国内较好的网站开发商城,开创集团网站建设,重庆网络推广排行,手机上建设网站最近工程开发遇到一个需求#xff1a;用Java去解析并编辑nginx.conf解析nginx.conf过程可以参考该项目的README.md下面举个列子说明一下该如何编辑nginx.conf。定义一个pojoimportcom.alibaba.fastjson.JSONArray;importcom.google.common.base.Strings;importlombok.Data;Dat…最近工程开发遇到一个需求用Java去解析并编辑nginx.conf解析nginx.conf过程可以参考该项目的README.md下面举个列子说明一下该如何编辑nginx.conf。定义一个pojoimportcom.alibaba.fastjson.JSONArray;importcom.google.common.base.Strings;importlombok.Data;Datapublic classWebHost {private longid;privateString host;privateString protocol;privateString name;}1、添加nginx配置1 public booleanaddWebToNginxConfig(WebHost webHost, String fileName) {2 if (webHost null ||Strings.isNullOrEmpty(fileName)) {3 return false;4 }5 try{6 NgxConfig ngxConfig NgxConfig.read(fileName);7 NgxBlock ngxBlockHttp ngxConfig.findBlock(http);8 NgxBlock ngxBlockWeb newNgxBlock();9 ngxBlockWeb.addValue(server);10 ngxBlockHttp.addEntry(ngxBlockWeb);11 if (https.equals(webHost.getProtocol())) {12 NgxParam ngxParam newNgxParam();13 ngxParam.addValue(listen 443 ssl);14 ngxBlockWeb.addEntry(ngxParam);15 ngxParam newNgxParam();16 ngxParam.addValue(String.format(server_name %s, webHost.getHost()));17 ngxBlockWeb.addEntry(ngxParam);1819 String virtualServerName webHost.formatName();20 ngxParam newNgxParam();21 ngxParam.addValue(String.format(ssl_certificate /etc/nginx/cert/%s.cert, virtualServerName));22 ngxBlockWeb.addEntry(ngxParam);23 ngxParam newNgxParam();24 ngxParam.addValue(String.format(ssl_certificate_key /etc/nginx/key/%s.key, virtualServerName));25 ngxBlockWeb.addEntry(ngxParam);26 } else{27 NgxParam ngxParam newNgxParam();28 ngxParam.addValue(listen 80);29 ngxBlockWeb.addEntry(ngxParam);30 ngxParam newNgxParam();31 ngxParam.addValue(String.format(server_name %s, webHost.getHost()));32 ngxBlockWeb.addEntry(ngxParam);33 }3435 NgxBlock ngxBlockLocation newNgxBlock();36 ngxBlockLocation.addValue(location);37 ngxBlockLocation.addValue(/);38 NgxParam ngxParam newNgxParam();39 ngxParam.addValue(proxy_pass http://backend_http);40 ngxBlockLocation.addEntry(ngxParam);41 ngxParam newNgxParam();42 ngxParam.addValue(proxy_set_header Host $host);43 ngxBlockLocation.addEntry(ngxParam);44 ngxParam newNgxParam();45 ngxParam.addValue(proxy_set_header X-Real-IP $remote_addr);46 ngxBlockLocation.addEntry(ngxParam);47 ngxParam newNgxParam();48 ngxParam.addValue(proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for);49 ngxBlockLocation.addEntry(ngxParam);50 ngxBlockWeb.addEntry(ngxBlockLocation);5152 String content newNgxDumper(ngxConfig).dump();53 log.info({}, content);54 return true;55 } catch(IOException e) {56 log.warn(write nginx.conf to file catch IOException!, e);57 }58 return false;59 }添加结果示例user nginx;worker_processes auto;error_log /var/log/nginx/error.log warn;pid /var/run/nginx.pid;events {worker_connections 1025;}http {include /etc/nginx/mime.types;default_type application/octet-stream;log_format main $remote_addr - $remote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for;access_log /var/log/nginx/access.log main;sendfile on;keepalive_timeout 65;#gzip on;upstream backend_http {server 1.1.1.1:80 weight2;server 2.2.2.2:80 weight2;}upstream backend_https {server 1.1.1.1:443 weight2;server 2.2.2.2:443 weight2;}server {listen 80;server_name aaaa.com;location / {proxy_pass http://backend_http;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}server {listen 443 ssl;server_name eeee.com;ssl_certificate /etc/nginx/cert/eeee.com.https.cert;ssl_certificate_key /etc/nginx/key/eeee.com.https.key;location / {proxy_pass http://backend_http;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}}2、删除nginx配置1 public booleandeleteWebFromNginxConfig(String host, String fileName) {2 if (Strings.isNullOrEmpty(host) ||Strings.isNullOrEmpty(fileName)) {3 return false;4 }5 try{6 NgxConfig ngxConfig NgxConfig.read(fileName);7 NgxBlock ngxBlockHttp ngxConfig.findBlock(http);8 List serverList ngxBlockHttp.findAll(NgxConfig.BLOCK,server);9 for(NgxEntry ngxEntry : serverList) {10 NgxBlock ngxBlock (NgxBlock) ngxEntry;11 NgxParam ngxParam ngxBlock.findParam(server_name);12 if(host.equals(ngxParam.getValue())) {13 ngxBlockHttp.remove(ngxBlock);14 }15 }16 String content newNgxDumper(ngxConfig).dump();17 log.info({}, content);18 return true;19 } catch(IOException e) {20 log.warn(write nginx.conf to file catch IOException!, e);21 }22 return false;23 }
http://www.pierceye.com/news/933360/

相关文章:

  • 西宁网站搭建百度网站制作联系方式
  • 中铁建设集团门户网站登陆翻页h5制作软件
  • 在线教育网站建设策划中国哪里在大建设
  • 宁波网站制作首荐荣盛网络好网站后台发布了但看不见
  • 用asp做网站出现空白30天网站建设全程实录 pdf
  • 吉林3厅官齐聚任免大会宁波网站建设广州活动策划公司排名
  • 个人阿里云账号可以做网站备案ip网址域名查询网
  • 厦门的企业网站企业形象网站建设意义
  • 网站源码网网站建设 制作教程
  • 怎么样销售关于网站建设网站服务器过期了怎么办
  • 常州建网站需要多少钱直播app开发费用
  • hpsocket 网站开发英文网站cms
  • 外贸自建站有哪些网站开发有哪几类
  • 青岛网站建设推广短视频运营是做什么的
  • 华为官方网站进入wordpress单页增加分页
  • 互动营销型网站建设大型网站建设开发设计公司
  • 锦州建设局网站商城网站建设方案电子版
  • 网站上删除信息如何做飞虎队网站建设
  • 中国有多少个网站网站做视频一个月有多少钱收入
  • 网站文字大小普洱市建设局网站
  • 兰州网站建设小程序凡客网站目录优化
  • 宿州科技网站建设一站式网站管家
  • 网站开发模块学些什么郑州网站建设动态
  • 各类设计型网站wordpress 防注入
  • 网站中有一个非常著名的原则如何与老板谈网站建设
  • 免费十八种禁用网站如何做一个网页布局
  • cms仿站pc网站案例
  • dede如何做手机网站哪些客户需要做网站
  • 阜蒙县建设镇官方网站那种网站2021
  • 同信.长春网站建设北京网站建设策划