Linux的nginx安装
查看其它网站服务器名称
curl -I www.taobao.com
淘宝nginx源代码地址
http://tengine.taobao.org/download.html
检测linux上是否 通过yum安装了nginx
rpm -qi nginx
卸载之前通过yum安装的nginx
yum remove nginx -y
安装nginx之前的依赖包
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y
源代码编译安装tenginx
下载淘宝nginx的源代码包
wget http://tengine.taobao.org/download/tengine-2.3.0.tar.gz
解压源代码
tar -zxvf tengine-2.3.0.tar.gz
切换进入nginx源代码
cd tengine-2.3.0
释放编译文件,指定安装路径
./configure --prefix=/opt/s18tngx/
.开始编译且安装
make && make install
nginx目录
conf 存放nginx的配置文件目录的
html 存放前端文件的地儿
logs 存放nginx日志文件的目录
sbin 存放nginx的可执行命令
配置nginx的环境变量
vim /etc/profile
写入
PATH="/opt/python36/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/s18tngx/sbin"
更新环境变量
source /etc/profile
查看nginx的位置信息
which nginx
直接输入命令
nginx
查看nginx的进程
ps -ef |grep nginx
查看nginx的端口
netstat -tunlp |grep nginx
关闭防火墙
iptables -F
在浏览器输入自己的ip地址就可以访问
http://192.168.81.133
查看nginx配置是否正确
nginx -t
部署一个web站点
nginx 目录下的conf文件夹,编辑nginx.conf查看
vim /opt/s18tngx/conf/nginx.conf
user root; #Nginx进程所使用的用户 worker_processes 1; #Nginx运行的work进程数量(建议与CPU数量一致或auto) error_log /log/nginx/error.log #Nginx错误日志存放路径 pid /var/run/nginx.pid #Nginx服务运行后产生的pid进程号 events { worker_connections //每个worker进程支持的最大连接数 use epool; //事件驱动模型, epoll默认 } //公共的配置定义在http{} http { //http层开始 ... //使用Server配置网站, 每个Server{}代表一个网站(简称虚拟主机) 'server' { listen 80; //监听端口, 默认80 server_name localhost; //提供服务的域名或主机名 access_log host.access.log //访问日志 //控制网站访问路径 'location' / { root /usr/share/nginx/html; //存放网站代码路径 index index.html index.htm; //服务器返回的默认页面文件 } //指定错误代码, 统一定义错误页面, 错误代码重定向到新的Locaiton error_page 500 502 503 504 /50x.html; } ... //第二个虚拟主机配置 'server' { ... } include /etc/nginx/conf.d/*.conf; //包含/etc/nginx/conf.d/目录下所有以.conf结尾的文件 } //http层结束
查看是否安装status模块
/opt/s18tngx/sbin/nginx -V
开启status状态功能 配置文件nginx.conf
#在访问ip/status的时候,进入状态功能 location /status { #开启nginx状态功能 stub_status on; }
然后重启nginx
nginx -s reload
编辑index.html文件
vim /opt/s18tngx/html/index.html
访问status页面
http://192.168.81.133/status
ab压力测试
yum -y install httpd-tools
ab -kc 1000 -n 100000 http://192.168.81.133/
-n requests #执行的请求数,即一共发起多少请求。
-c concurrency #请求并发数。
-k #启用HTTP KeepAlive功能,即在一个HTTP会话中执行多个请求
nginx的access.log访问日志功能
编辑nginx.conf打开如下配置参数
打开如下注释
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 logs/access.log main;
access_log "pipe:rollback logs/access_log interval=1d baknum=7 maxsize=2G" main;
重启nginx查看logs下的日志文件,检测用户请求信息
tail -f logs/access.log
nginx的404页面
修改nginx.conf的404错误页面优化
找到如下配置
#当错误状态码是 40x系列就返回,nginx目录下的40x.html
error_page 404 403 402 400 401 /40x.html;
重启nginx 查看404页面
限制ip访问
location / {
deny 122.71.240.254;
}
设置虚拟域名
修改Windows的hosts
C:\Windows\System32\drivers\etc
写入
192.168.81.133 www.s18xiaoqian.com
配置文件的修改位置
'server' { server_name www.s18xiaoqian.com; }