课题三:Nginx基础知识
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

课题三:Nginx基础知识

  • 1,052 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,052
On Slideshare
1,052
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
2
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Nginx基础知识 Nginx基础知识 东子 著
  • 2. 内容结构 • • • • 特性介绍 安装指南 管理命令 配置文件 2
  • 3. 内容结构 • • • • 特性介绍 安装指南 管理命令 配置文件 3
  • 4. 没错,这是匹黑马! 4
  • 5. 各种优点 1.异步非阻塞 2.缓存文件描述符 3.简单的负载均衡 4.热部署 5
  • 6. 适合场景 • LB • 静态文件服务器 • Web应用服务器 6
  • 7. 内容结构 • • • • 特性介绍 安装指南 管理命令 配置文件 7
  • 8. 安装指南 • 安装命令:apt-get install nginx • 重要路径: 1,运行文件路径:/usr/sbin/nginx 2,配置文件路径:/etc/nginx/ 8
  • 9. 内容结构 • • • • 特性介绍 安装指南 管理命令 配置文件 9
  • 10. 管理命令:启动、关闭 • 启动:nginx -c /usr/nginx/nginx.conf • 关闭: 1,kill -QUIT `cat /var/run/nginx.pid` 2,kill -TERM `cat /var/run/nginx.pid` 10
  • 11. 管理命令:重启、检查配置 • 重启: 1,kill -HUP `cat /var/run/nginx.pid` 2,nginx -s reload • 检测配置: nginx -t /usr/nginx/nginx.conf 11
  • 12. 内容结构 • • • • 特性介绍 安装指南 管理命令 配置文件 12
  • 13. 配置文件 • • • • 语法规则 负载均衡 整合php-fpm 如何rewrite 13
  • 14. 配置文件 -语法规则 -结构 配置文件-语法规则- 14
  • 15. 配置文件 -语法规则 -全局配置 配置文件-语法规则• • • • • user www www worker_proccesses 4 worker_rlimit_nofile 10240 pid /var/run/nginx.pid error_log /var/error.log info [ debug | info | notice | warn | error | crit] 15
  • 16. 配置文件 -语法规则 -server 配置文件-语法规则-server • listen 80 • server_name localhost • access_log /var/log/access.log main [main,timing,up_head,mine] • log_format main '$remote_addr $remote_user [$time_local] ' 16
  • 17. 配置文件 -负载均衡 -样例 配置文件-负载均衡http { upstream myproject { server 127.0.0.1:8000 weight=3; server 127.0.0.1:8001 } server { listen 80; server_name www.domain.com; location / { proxy_pass http://myproject; } } } 17
  • 18. 配置文件 -负载均衡 -策略 配置文件-负载均衡策略: 轮询,weight,ip_hash ip_hash 写法: upstream myproject { server 127.0.0.1:8000; server 127.0.0.1:8001; ip_hash; } 补充: down,backup 18
  • 19. 配置文件 -整合PHP-nginx相关配置 配置文件-整合PHP-nginx PHP-nginx相关配置 server { listen 80; server_name www.domain.com; location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; } } 19
  • 20. 配置文件 -整合PHP-php-fpm 配置文件-整合PHP-php-fpm • 必要编译参数: --enable-fpm • 必要配置选项: listen 127.0.0.1:9000 • 管理命令: 1,php-fpm 2,kill -INT `cat /var/php-fpm.pid` 3,kill -USR2 `cat /var/php-fpm.pid` 20
  • 21. 配置文件 -rewrite-指令列表 配置文件-rewrite-rewrite-指令列表 • • • • • set break return if rewrite 21
  • 22. 配置文件 -rewrite-指令:if 配置文件-rewrite-指令:if -rewrite-指令: • 相等与不等: =,!= 相等与不等:= • 检测符号: -f,-d,-e,-x 检测符号:-f,-d,-e,-x • 匹配正则: ~,大小写敏感匹配 ~*,大小写不敏感匹配 !~,大小写敏感不匹配 !~*,大小写不敏感不匹配 22
  • 23. 配置文件 -rewrite-指令:if例子 配置文件-rewrite-指令:if -rewrite-指令: if例子 例子1: 例子1 if ($request_method = POST ) { return 405; } 例子2: 例子2 if (!-f $request_filename) { break; proxy_pass http://127.0.0.1; } 例子3: 例子3 if ($http_user_agent ~ MSIE) { rewrite ^(. *)$ /msie/$1 ^(.* break; } 23
  • 24. 配置文件 -rewrite-指令:rewrite 配置文件-rewrite-指令:rewrite -rewrite-指令: • • • • 用法:rewrite 正则 替换 标志位 用法:rewrite rewrite的生效区块为server, location, if rewrite的生效区块为 的生效区块为server, rewrite只对相对路径进行匹配 ,不处理host。 rewrite只对相对路径进行匹配 不处理host 只对相对路径进行匹配, host。 标志位: 1. break:停止rewrite检测,rewrite的最终结果。 • last:停止当前区块rewrite检测,转而去其他location尝 试匹配。 • redirect:返回302,临时重定向。 1. permanent:返回301,永久重定向。 24
  • 25. 配置文件 -rewrite-指令:rewrite例子 配置文件-rewrite-指令:rewrite -rewrite-指令: rewrite例子 break例子: rewrite ^/media/(.*)..*$ $1/mp3 break; last例子: rewrite ^/media/(.*)..*$ $1/mp3 last; redirect例子: rewrite ^(.*)$ http://newdomain.com/ redirect; permanent例子: rewrite ^(.*)$ http://newdomain.com/ permanent; 25
  • 26. 3x