web服务
文章平均质量分 63
7*24 工作者
走自己的路,让别人说去吧
展开
-
Nginx缓冲区
Nginx的项目一般请求流程为:“客户端→Nginx→服务端”,在这个过程中存在两个连接:“客户端→Nginx、Nginx→服务端”,那么两个不同的连接速度不一致,就会影响用户的体验(比如浏览器的加载速度跟不上服务端的响应速度)。如果客户端到nginx速度快,nginx到服务器速度慢,没有缓冲区,一点点数据量就直接发到客户端,十分浪费性能。有了缓冲区,返回内容放到缓冲区后,nginx到服务器的连接就能断开了,客户端从缓冲区拉取即可。相反,客户端到nginx速度慢,nginx到服务器速度快,没有缓冲区,原创 2024-04-23 15:42:53 · 498 阅读 · 0 评论 -
nginx禁止国内IP访问网站
禁止国内IP访问网站翻译 2022-06-29 10:40:38 · 1797 阅读 · 0 评论 -
nginx禁止国外IP访问网站
禁止国外IP访问网站翻译 2022-06-23 16:03:49 · 541 阅读 · 0 评论 -
使用内存硬盘(tmpfs)来加速网站
准备工作1、对 nginx root 目录要备份2、查看系统版本$ cat /etc/issueUbuntu 18.04.4 LTS \n \l步骤1、创建一个目录,比如/ramdisk,然后使用tmpfs命令挂载一部分内存当作硬盘mount -t tmpfs -o size=256M tmpfs /ramdisk此处我挂载了最大256M的内存到/tmp节点,值得注意的是系统不...翻译 2020-02-28 10:13:04 · 1504 阅读 · 0 评论 -
Apache服务优化
一、账号设置 以专门的用户帐号和用户组运行 Apache 服务。 1、根据需要,为 Apache 服务创建用户及用户组。如果没有设置用户和组,则新建用户,并在 Apache 配置文件中进行指定。创建 Apache 用户组。groupadd webuser创建 Apache 用户并加入 Apache 用户组。useradd webuser –g webuser将下面两行设...翻译 2018-04-09 14:44:32 · 751 阅读 · 0 评论 -
linux下基于apache下的svn的搭建
一、下载软件subversion-1.7.14.tar.bz2apr-1.6.3.tar.gzapr-util-1.6.1.tar.gzsqlite-amalgamation-3190300.ziphttpd-2.2.26.tar.bz2pcre2-10.31.tar.bz2expat-2.1.0.tar.gz二、安装所依赖的包 1、安装apr$ wget http:...原创 2018-04-09 16:51:40 · 735 阅读 · 0 评论 -
配置Tomcat的虚拟主机
tomcat的虚拟主机,在主配置文件 conf/server.xml 中,每一个Host就表示一个虚拟主机一、默认虚拟主机<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"><Valve className="org.apache.catalina.va原创 2018-04-09 18:03:21 · 385 阅读 · 0 评论 -
TIME_WAIT太多解决思路和方法
问题描述环境是SLB+2台ECS实例,在ECS实例上跑的是的LNMP服务,在某一天下午三点中app包加载数据很慢,平时可能一两秒就能加载完成js,css等样式解决方法 1、找到加载慢的域名和URL 访问后端数据库,看获取数据情况,访问数据正常。 2、查看操作系统CPU、内存、负载、网络情况 查看CPU命令:top 查看内存命令:free -m ...原创 2018-05-02 14:42:25 · 9017 阅读 · 0 评论 -
Tomcat 开启APR运行模式
启动tomcat8以下问题: org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found...翻译 2018-06-28 16:25:32 · 1615 阅读 · 0 评论 -
网站 TCP 队列问题排查
一、问题描述 1、监控系统发现电商网站主页及其它页面间歇性的无法访问 2、查看安全防护和网络流量、应用系统负载均正常; 3、系统重启后,能够暂时解决,但持续一段时间后间歇性问题再次出现。二、问题初步判断1、检查dev 和 网卡设备层,是否有error和drop ,分析在硬件和系统层是否异常 命令 cat /proc/net/dev 和 ifconfig2...转载 2018-05-14 12:39:10 · 746 阅读 · 0 评论 -
Apache配置虚拟主机
我用的是源码编译的apache,配置虚拟主机,在主配置文件目录下的 extra/httpd-vhosts.conf 文件,自己也可以创建新的目录,然后在 httpd.conf 最末尾配置上路径即可,添加内容为:IncludeOptional conf.d/*.conf #conf.d为自己手动创建的目录下面是一些虚拟主机样例:#最简单的配置虚拟主机<VirtualHost ...原创 2018-04-09 14:08:29 · 353 阅读 · 0 评论 -
源码编译安装apache
一、安装依赖包 yum -y install wget make gcc gcc-c++ pcre openssl openssl-devel zlib unzip cmake ncurses-devel libjpeg libjpeg-devel libpng libpng-devel libxml2 libxml2-devel curl-devel libtool libtool-lt...原创 2018-03-21 17:26:01 · 6742 阅读 · 0 评论 -
keepalived高可用集群服务
一、简介 keepalived 是专门用来监控LVS集群系统中各个节点的状态,后来又加入了VRRP(虚拟路由器冗余协议)功能二、keepalived的两大功能1、对节点做健康检查 healthcheck2、高可用对之间的失败接管(接管的有VIP资源及相应的服务) failover三、keepalived工作原理1、VRRP(虚拟路由器冗余协议),它的出现就是为...原创 2018-02-06 15:07:39 · 456 阅读 · 0 评论 -
LVS调度模式
LVS常用的调度模式有 NAT模式、DR模式、TUN模式、FULL NAT模式(在淘宝上用)一、NAT模式 1、NAT技术将请求的报文(DNAT)和响应的报文(SNAT),通过调度器地址重写,然后在转发给内部的服务器,报文返回时再改写成原来的用户请求的地址; 2、只需要在调度器LB上配置公网IP即可,调度器也要有私有LAN IP 和内部RS节点通信; 3、每台内部RS节...原创 2018-03-02 13:58:03 · 484 阅读 · 0 评论 -
Java 使用 Redis
前提: 开始在 Java 中使用 Redis 前, 我们需要确保已经安装了redis服务端及Java redis 驱动,且能正常使用 Java。安装 Java redis 驱动 下载驱动包 jedis.jar (https://mvnrepository.com/artifact/redis.clients/jedis) ,下面是下载方法,一般都是下载最新的jar包(jedis...原创 2018-01-05 12:58:09 · 580 阅读 · 0 评论 -
使用python分析nginx访问日志
一、在nginx配置文件中添加日志的格式,并打开记录访问日志的功能#nginx配置文件#添加的字段、access_log on;log_format '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' ...翻译 2018-03-01 15:20:21 · 2500 阅读 · 0 评论 -
curl error: Problem with the SSL CA cert (path access rights?) 的解决方法
这里显示的是CA问题: 首先,颁发server证书的CA是没有问题的,那么应该是curl使用的ca-bandle.crt 有问题,这很可能意味着您已经删除了/etc/pki/tls/certs/ 目录下的某些文件或设置了无效的权限。$ yum reinstall openssl ca-certificates -y$ ll /etc/pki/tls/certs/ca-bundle.crt原创 2018-01-19 16:02:23 · 13469 阅读 · 0 评论 -
编译php可能遇到的问题和解决方法
在编译php7.1.13的时候,出现了一些问题,编译参数如下:[root@linux-node1 php-7.1.13]# ./configure --prefix=/usr/local/php \--disable-debug \--disable-phpdbg \--enable-mysqlnd \--enable-bcmath \--with-bz2=/usr \--en原创 2018-01-25 15:13:26 · 771 阅读 · 0 评论 -
profile filters properties 无法替换问题总结
基于maven pom配置中的profiles配置针对不同环境,使用不同配置文件。第一步:创建filters资源文件(src/main/filters/dev.properties、test.properties、beta.properties),其中路径地址/名称任意设置。dev.properties代码mysql.url=jdbc:mysql://xx.xx.xx.xx:330...翻译 2018-06-21 13:18:18 · 1128 阅读 · 0 评论 -
pm2管理nodejs
node.js下载地址https://nodejs.org/en/download/一、下载安装包wget https://nodejs.org/dist/v8.11.3/node-v8.11.3-linux-x64.tar.xz二、解压缩xz -d node-v8.11.3-linux-x64.tar.xz tar xf node-v8.11.3-linux...原创 2018-06-17 12:43:19 · 1349 阅读 · 0 评论 -
使用信号管理Nginx的master、worker进程
说明:立刻停止服务: nginx -s stop 或者kill -SIGTERM $(cat /data/services/nginx/logs/nginx.pid) 优雅停止服务: nginx -s quit 或者kill -QUIT $(cat /data/services/nginx/logs/nginx.pid) 重载配置文件(master不退出,重新加载work...原创 2019-06-12 14:17:10 · 1118 阅读 · 0 评论 -
配置nginx四层转发
所谓四层就是基于IP+端口的负载均衡,通过虚拟IP+端口接收请求,然后再分配到真实的服务器;七层通过虚拟的URL或主机名接收请求,然后再分配到真实的服务器七层就是基于URL等应用层信息的负载均衡。3306端口基本不对外开放。我们如果想通过外网直接访问mysql怎么做呢,这里我们可以使用nginx端口转发来实现。1、安装nginx./configure --prefix=/applicatio...翻译 2019-05-16 13:30:44 · 7513 阅读 · 0 评论 -
JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解
企业级Java应用开发、维护中,有时候我们会碰到下面这些问题:OutOfMemoryError,内存不足内存泄露线程死锁锁争用(Lock Contention)Java进程消耗CPU过高…这些问题在日常开发、维护中可能被很多人忽视(比如有的人遇到上面的问题只是重启服务器或者调大内存,而不会深究问题根源),但能够理解并解决这些问题是Java程序员进阶的必备要求。本文将对一些常用的J...转载 2018-11-16 10:52:27 · 792 阅读 · 0 评论 -
Nginx配置跨域访问
由于浏览器同源策略的存在使得一个源中加载来自其它源中资源的行为受到了限制。即会出现跨域请求禁止。通俗一点说就是如果存在协议、域名、端口或者子域名不同服务端,或一者为IP地址,一者为域名地址(在跨域问题上,域仅仅是通过"url的首部"来识别而不会去尝试判断相同的IP地址对应着两个域或者两个域是否同属同一个IP),之中任意服务端旗下的客户端发起请求其它服务端资源的访问行动都是跨域的,而浏览器为了安全...翻译 2018-11-01 12:46:04 · 15915 阅读 · 0 评论 -
Nginx+Uwsgi部署Django项目
一、uwsgi介绍uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换。1、 WSGI / uwsgi / uWSGIWSGI是一种Web服务器网关接口。它是一个Web服务器(如nginx,uWSGI等服务器)与web应用(如用Flask框架写的程序)通信的一种规范。uwsgi是一种线路...原创 2018-10-29 14:31:53 · 401 阅读 · 0 评论 -
性能优化|Tomcat 服务优化
一、Tomcat内部结构1、配置文件说明 • server:指的是整个应用的上下文, 也是最顶层的容器,tomcat中所有的东西都在这个server里边。• service:指的是一个服务,主要的功能是把connector组件和engine组织起来,使得通过connector组件与整个容器通讯的应用可以使用engine提供的服务。 • engine:服务引擎,这个可以理解为一个真正...转载 2018-09-12 11:59:31 · 539 阅读 · 0 评论 -
node管理之cnpm工具代替npm
一、安装node,并安装cnpm工具#!/bin/bash#安装nodecd /data/downloadif [ ! -f node-v8.11.1-linux-x64.tar.xz ]; then echo "nodejs file not exist" exit 2fixz -dk node-v8.11.1-linux-x64.tar.x...原创 2018-08-01 10:21:01 · 577 阅读 · 0 评论 -
jenkins根据不通的变量发布执行不同的命令和 publish over ssh
在jenkins根据不通的变量发布执行不同的命令,主要用到其选择参数 1、安装插件 2、配置选项参数名称:deploy_env选项(不同的环境写不同的变量,一行代表一个):deployrollback......git参数(采用分支构建)名称:release_branch参数类型:Branch字符参数(禁止其杀死衍生进程设置)名称:BUILD_ID默认值:...原创 2018-07-31 14:28:42 · 4514 阅读 · 0 评论 -
启动jenkins时禁止其杀死衍生进程
方法一修改配置文件,启动jenkins时禁止其杀死衍生进程在 /etc/sysconfig/jenkins 中加入参数-Dhudson.util.ProcessTree.disable=true即 java -Dhudson.util.ProcessTree.disable=true -jar jenkins.war方法二修改构建号,使jenkins找不到衍生进程BU...原创 2018-07-31 13:59:36 · 2123 阅读 · 2 评论 -
nginx代理内网服务器的图片服务器
需求:我们图片服务器放在内网环境,前端是nginx提供的web服务,让用户访问到内网服务器上的图片并正确显示一、首先在内网图片服务器上安装配置nginx 安装过程省略server{ listen 80 ; server_name imglib.exapmle.com; location ~* /udata/(.+)\.(jpg|gif|pn...原创 2018-07-22 10:49:27 · 3443 阅读 · 1 评论 -
nginx日志切割脚本
nginx访问日志的切割,每十分钟切割一次,放到定时任务中*/10 * * * * sh nginx_log_cut.sh#!/bin/sh# Function:For cut nginx'log every 10 min# script_name: nginx_log_cut.sh. /etc/profilefunction move_log(){ local...原创 2018-07-26 17:41:12 · 455 阅读 · 0 评论 -
安装-配置免费https证书
一、安装证书工具wget https://dl.eff.org/certbot-autochmod 755 certbot-auto二、生成证书并验证mkdir -p /data/services/tengine/ssl/manhour.test.xxx.cnnginx配置http的80端口:server{ listen 80; location / { ...原创 2018-07-24 21:10:22 · 856 阅读 · 0 评论 -
jenkins Process leaked file descriptors
在Jenkins中新建了一个Job,假设你在一些列Build Step之前/之后,启动了一个进程,打个比方说启动一个Jboss进程。等到Build完成,你去Console Output中查看显示启动成功,甚至PID也有了。但是当你去后台查看的时候,发现其实这个进程根本不存在,并没有启动成功。不过如果你使用的是较早的Hudson版本(Ver 1.136),并且是直接在页面中的Build Se...翻译 2018-06-20 09:30:04 · 2997 阅读 · 3 评论 -
nginx主配置文件
user www www;worker_processes auto;error_log /home/wwwlogs/nginx_error.log crit;pid /usr/local/nginx/logs/nginx.pid;#Specifies the value for maximum file descriptors that can be open原创 2017-03-29 10:31:25 · 670 阅读 · 0 评论 -
off_t undefined
今天帮朋友搭建lnmp环境的时候,在编译php-5.6.30的时候,报以下这个错误 configure: off_t undefined; check your library configuration备注:linux 的操作系统是centos6.8(2.6.32-642.13.1.el6.x86_64) lnmp环境搭建可以参考我的博文:http://blog.csdn.net原创 2017-05-19 11:08:45 · 5067 阅读 · 0 评论 -
Nginx安全小知识
1、在配置文件中小心使用”if”。它是重写模块的一部分,不应该在任何地方使用。 “if”声明是重写模块评估指令强制性的部分。。 解决方案:在非重写的指令内完全禁用”if”。这将更改现有的许多配置,所以还没有完成。2、 将每个 ~ .php$ 请求转递给PHP。 这个指令有个潜在的安全漏洞,即使文件名为 hello.php.jpeg 它也会匹配 ~ .php$ 这个正则而执行翻译 2018-01-12 17:02:48 · 500 阅读 · 0 评论 -
WAF安全应用防火墙(openresty部署)
一、了解WAF1、定义 Web应用防护系统(也称:网站应用级入侵防御系统 。英文:Web Application Firewall,简称: WAF)。利用国际上公认的一种说法:Web应用 防火墙 是通过执行一系列针对http/https的 安全策略 来专门为Web应用提供保护的一款产品。2、WAF的功能 支持IP白名单和黑名单功能,直接将黑名单的IP访问拒绝。 支持URL白名单,将不需要过滤的原创 2017-06-13 14:48:55 · 25088 阅读 · 1 评论 -
Linux如何查看哪个进程占用的SWAP分区比较多
在日常管理中,我们经常会遇到swap分区使用比较多,那么导致是那些进程使用的呢,其实我们可以通过/proc/pid/下的smaps来获得。使用下面的命令可以列出所有进程占用的swap分区的大小,分别我们分析问题。[root@iZ23hh6yk41Z ~]#for i in $(ls /proc | grep "^[0-9]" | awk '$0>100'); do awk '/Swap:/{a=a+原创 2017-06-28 10:26:02 · 18229 阅读 · 0 评论 -
WAF安全应用防火墙(nginx+lua)
一、如果使用nginx简单实现403和404,应该都不难,只需要在配置文件中的server字段中添加相应的内容即可 1、nginx实现rerurn 403 修改nginx配置文件在server中加入以下内容set $block_user_agent 0; if ( $http_user_agent ~ "Wget|AgentBench"){ set $block_use原创 2017-06-26 09:58:47 · 5324 阅读 · 0 评论 -
Linux 正确设置站点权限
目的:为了保证网站不遭受木马入侵上传及修改文件。相对安全的权限:1、站点内所有目录和文件的用户和组都应该是root2、所有目录权限默认的7553、所有文件权限默认的644 (不能改文件)1+2,网站服务用户(nginx)不能往目录里面写文件,即nginx用户就不能在里面写文件了,木马就杜绝了。 注意:网站服务的程序使用的用户不能用root,可以用nginx以上权限设置可以防止木马,但是用户上传原创 2017-07-11 11:15:03 · 3036 阅读 · 0 评论