Nginx
1、准备工作
下载安装:nginx.org 下载1.10包
放到家目录下 解压
tar -zxf nginx-1.10.1.tar.gz
源码安装需要三步:
在nginx解压后的目录内进行操作(确定80端口未被占用)
1. ./configure
./configure --prefix=/usr/local/lnmp/nginx(默认安装位置) --with-http_ssl_module (自动编译)--with-http_stub_status_module(测试模块)
提示错误:缺少安装包
yum install pcre-devel -y yum install -y openssl-devel
2. make (编译)
3. make install (生成)
cd /usr/local/lnmp/nginx/sbin/ ./nginx (打开nginx)
curl -I 172.25.15.11 (可以查看到)
或者用火狐浏览器查看 可以查看到
2、删除卸载 nginx
在 /usr/local/lnmp/nginx/sbin/ 下 执行 ./nginx -s stop (停止nginx)
rm -fr /usr/local/lnmp/nginx
在 解压后的目录内 make clean
或者干脆点:删除家目录下的 解压后的文件 重新解压。
3、隐藏nginx版本号 关闭测试模式(会导致软件很大)
重新解压后 进入解压后的目录内
vim src/core/nginx.h (隐藏版本号)
vim auto/cc/gcc (关闭测试模式)
注释掉 179行 然后 进行 ./configure && make && make install
链接nginx 到系统下 可以直接执行nginx命令
ln -s /usr/local/lnmp/nginx/sbin/nginx /usr/local/sbin/
which nginx (可以查看到nginx)
在系统下 输入 nginx (开启)
nginx -s stop (关闭)
nginx -s reload (重载)
nginx -t 检查配置文件语法问题
4、动态模块和静态模块
重新配置一个nginx
./configure --prefix=/tmp/nginx --with-ngx_mail_module=dynamic(添加动态模块)
在/tmp/nginx/ 下多了一个modules (目录内的模块为动态模块)
可以在配置文件 /tmp/nginx/conf/nginx.conf 中的第一行调用动态模块
(apache中早就支持nginx刚出)
5、给nginx进程添加用户
ps aux 可以查看到 nginx进程的worker为nobody
创建一个nginx用户:useradd -s /sbin/nologin nginx
在主配置文件中修改 /usr/local/lnmp/nginx/conf/nginx.conf
Io负用方法:use epoll
并发链接数:worker_connections 4096 X 2 (cpu数)
用户为 nginx 线程数为2 绑定任务到 cpu的两个核
6、设置用户的最大进程数,文件数
vim /etc/security/limits.conf
最大进程数为100
shell炸弹::(){ :|:& }; : (无限调用函数一直到系统资源枯竭 然后会卡住,所以要限制普通用户的最大进程数)
7、nginx 开启443端口
网页测试:
修改配置文件: /usr/local/lnmp/nginx/conf/nginx.conf
nginx -t (检测语法错误)
nginx -s reload (重载nginx)
在网页测试: server1.example.com/status 刷新
修改配置文件: /usr/local/lnmp/nginx/conf/nginx.conf server{} 就是个虚拟主机
在/etc/pki/tls/certs/ 下 输入指令make cert.pem(你想生成的ca证书)
输入证书的相关信息。将证书移动到 /usr/local/lnmp/nginx/conf/ 下
Nginx -t nginx -s reload
访问https://server1.example.com 可以查看到。
网页重写:
1.修改发布首页的方法
查看百度的源代码页 然后把代码写入发布首页 /usr/local/lnmp/nginx/html/index.html
2.网页重定向的方法
在80端口下的虚拟主机中加入
nginx -s reload 访问 server1.example.com 可以跳转。