Apache 中 KeepAlive 配置的合理使用
在 Apache 服务器中,KeepAlive 是一个布尔值,On 代表打开,Off 代表关闭,这个指令在其他众多的 HTTPD 服务器中都是存在的. KeepAlive 配置指令决定当处理完用户发起的 HTTP 请求后是否立即关闭 TCP 连接,如果 KeepAlive 设置为On,那么用户完成一次访问后,不会立即断开连接,如果还有请求,那么会继续在这一次 TCP 连接中完成,而不用重复建立新的 TCP 连接和关闭TCP 连接,可以提高用户访问速度. 那么我们考虑3种情况: 1.用户浏览一个网页时,除了网页本身外,还引用了多个 javascript 文件,多个 css 文件,多个图片文件,并且这些文件都在同一个 HTTP 服务器上. 2.用户浏览一个网页时,除了网页本身外,还引用一个 javascript 文件,一个图片文件. 3.用户浏览的是一个动态网页,由程序即时生成内容,并且不引用其他内容. 对于上面3中情况,我认为: 1.最适合打开 KeepAlive 2.随意 3.最适合关闭 KeepAlive 下面我来分析一下原因. 在 Apache 中,打开和关闭 KeepAlive 功能,服务器端会有什么异同呢? 先看看理论分析. 打开 KeepAlive 后,意味着每次用户完成全部访问后,都要保持一定时间后才关闭会关闭 TCP 连接,那么在关闭连接之前,必然会有一个Apache 进程对应于该用户而不能处理其他用户,假设 KeepAlive 的超时时间为 10 秒种,服务器每秒处理 50个独立用户访问,那么系统中 Apache 的总进程数就是 10 * 50 = 500 个,如果一个进程占用 4M 内存,那么总共会消耗 2G内存,所以可以看出,在这种配置中,相当消耗内存,但好处是系统只处理了 50次 TCP 的握手和关闭操作. 如果关闭 KeepAlive,如果还是每秒50个用户访问,如果用户每次连续的请求数为3个,那么 Apache 的总进程数就是 50 * 3= 150 个,如果还是每个进程占用 4M 内存,那么总的内存消耗为...
解决statically from the source with...
原因是pcre没有找到. PCRE是perl所用到的正则表达式,目的是让所装的软件支持正则表达式.默认情况下,Nginx只处理静态的网页请求,也就是html.如果是来自动态的网页请求,比如*.php,那么Nginx就要根据正则表达式查询路径,然后把*.PHP交给PHP去处理. $ rpm -qa | grep pcre //查询系统中有没有安装PCRE,一般装系统是默认装有,所以我们要删掉系统自带的. $ cp /lib/libpcre.so.0 / //在删除系统自带的PCRE之前,要先备份一下libpcre.so.0这个文件,因为RPM包的关联性太强,在删除后没libpcre.so.0这个文件时我们装PCRE是装不上的 $ rpm -e –nodeps pcre-6.6-1.1 //删除系统自带的PCRE 进入ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ 下载最新版本的pcre,然后编译安装. $ tar zxvf pcre-8.00.tar.gz $ cd pcre-8.00 $ cp /libpcre.so.0 /lib/ //把我们删除系统自带的PCRE之前备份的libpcre.so.0拷贝到/lib 目录下 $ ./configure //配置PCRE,因为PCRE是一个库,而不是像pache、php、postfix等这样的程序,所以我们安装时选择默认路径即可,这样会在后面安装其它东西时避免一些不必要的麻烦,执行完这部后会显示出下图,上面显示了我们对PCRE的配置 $ make && make install
IIS7伪静态化URL Rewrite模块
在Win7安装了IIS7.5之后,搭建一些网站或者博客,但是IIS7.5本身没有URL Rewrite功能,也就是无法实现网址的伪静态化. 从网上找了一下,原来微软IIS官方网站给IIS7及以后续版本提供了个URL重写组件. 下载地址: http://www.iis.net/download/URLRewrite 首先,打开上面网址,到IIS官方网站下载模块. 根据需要,点击右侧的下载链接(操作系统是64位的,就下载x64版本;32位的系统,就下载x86版本) 下载完成之后,安装重写模块. 下载的是本地msi包(rewrite_2.0_rtw_x64.msi或者rewrite_2.0_rtw_x86.msi),双击安装即可(安装之前最好先停止IIS服务,如果IIS服务没停的话,安装完成后会要求重启系统.) 安装完成后,打开"Internet 信息服务(IIS)管理器",就可以看见模块中多了一个Url Rewrite 模块. 进入需要设置的站点,双击 Url Rewrite 图标,进入设置界面. 点击Add Rule(s)输入Rewrite重写规则. 确认无误后,点击右栏的"应用"按钮,大功告成.
用extundelete恢复ext4文件系统中被误删除的文件
到http://extundelete.sourceforge.net/下载extundelete. tar -xjf extundelete-0.2.0.tar.bz2 cd extundelete-0.2.0 ./configure make make install 恢复 /dev/sda3里一个被误删除的文件. extundelete /dev/sda3 --restore-file /an/important/file 恢复 /dev/sda3里一个被误删除的文件夹. extundelete /dev/sda3 --restore-directory /an/important 恢复 /dev/sda3里所有被删除的东西. extundelete /dev/sda3 --restore-all
centos安装opensips网络电话
1.mysql安装(因opensips添加鉴权用户需使用mysql存储) 下载资源文件都放在 /usr/src/为例. 命令: wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm yum install mysql-community-server 安装后启动: service mysqld restart 登陆mysql: mysql -u root 修改密码: set password for 'root'@'localhost' =password('password***'); 注:最好不要修改mysql端口. 2.安装opensips 安装依赖库: yum install mysql mysql-server mysql-libs mysql-devel yum install gcc make yum install flex bison ncurses libncurses-dev ncurses-devel 下载并解压opensips的源码(最新版本2.4.3,如果发现版本已更新可以去官网查看最新版本路径): cd /usr/src wget http://opensips.org/pub/opensips/latest/opensips-2.4.3.tar.gz tar zxvf opensips-2.4.3.tar.gz cd opensips-2.4.3 切换到root用户: su - root 启动配置菜单: make menuconfig 重点: 很多教程都没表明这个选择步骤: Configure Compile Options -> Configure Excluded Modules -> db_mysql 按照此顺序选择db_mysql (空格键为选择键方向键为前进后退和确定) 选择db_mysql后一定要save. 最后选择"Compile...
linux下的arp检测软件 arpwatch(ARP watcher)
功能说明: 监听网络上ARP的记录. 语法: arpwatch [-d][-f][-i][-r] 补充说明: ARP(Address Resolution Protocol)是用来解析IP与网络装置硬件地址的协议.arpwatch可监听区域网络中的ARP数据包并记录,同时将监听到的变化通过E-mail来报告. 参数: -d 启动排错模式. -f 设置存储ARP记录的文件,预设为/var/arpwatch/arp.dat. -i 指定监听ARP的接口,预设的接口为eth0. -r 从指定的文件中读取ARP记录,而不是从网络上监听.