• nginx
  • 轻量级的web服务软件
  • 俄罗斯
  • 与apache区别的最大优点:高并发连接(30000~50000) 低消耗
  • 源码包安装nginx
  • 先检查有无预先安装nginx
  • 安装编译环境
  • pcre-devel
  • 基于pro语言的正表达式
  • zlib-devel
  • 支持压缩功能
  • gcc*
  • GNU c语言编译器
  • openssl-devel
  • 提供https的服务
  • 创建进程用户
  • useradd -M -s /sbin/nologin
  • 配置
  • ./configure
  • --prefix=
  • 指定安装路径
  • --user=
  • 指定进程用户
  • --group=
  • 指定进程组
  • --with-http_ssl_module
  • 支持https的访问方式
  • --with-http_stub_status_module
  • 支持访问信息统计功能
  • 配置完毕后进行编译安装
  • 优化
  • 设置为全局命令
  • 做软连接,需要注意的是nginx有两个命令目录。都需要做软连接。
  • 编写系统服务并添加执行权
  • #!/bin/bash #chkconfig: - 99 20 #description:Nginx Service Control Script PROG="/usr/local/nginx/sbin/nginx" PIDF="/usr/local/nginx/logs/nginx.pid" case "$1" in start) $PROG ;; stop) pkill nginx ;; restart) $0 stop $0 start ;; reload) kill -s HUP $(cat $PIDF) ;; *) echo "Usage: $0 {start|stop|restart|reload}" exit 1 esac exit 0
  • 第二行chkconfig是必须要有
  • 主配置文件中优化参数
  • 全局配置项

nginx服务与LNMP的部署_mysql

  • 运行用户 工作进程数量 错误日志文件位置:消息等级 pid文件位置
  • I/O事件配置

nginx服务与LNMP的部署_nginx_02

  • 每个进程处理的线程数量
  • 在events中可添加use epoll 提高并发连接,支持非活跃连接。
  • HTTP配置
  • 定义了服务的基本信息:访问日志,http端口,字符集等
  • server配置
  • 每一个server都是一个网站点
  • 在需要监控访问状态的server中添加如下语句
  • location /status { stub_status on; access_log off; }
  • 其中/号后的名称随意,只是为通过web服务去访问
  • 访问控制
  • basic(账号密码)
  • 软件包:httpd-tools
  • 用htpasswd创建用户与文件
  • htpasswd -c /usr/local/nginx/passwd.db test
  • 再次添加用户去掉-c即可
  • 为了提高安全性将该文件权限设置为400
  • 在主配置文件中,对需要进行访问控制的站点写入如下语句
  • auth_basic "secret"; auth_basic_user_file /usr/local/nginx/passwd.db;
  • 编写完毕后创建用户测试效果
  • 基于IP
  • deny:拒绝
  • allow:允许
  • deny 192.168.10.3; allow all;
  • 仅拒绝
  • 虚拟主机
  • 基于域名
  • 开启多个server,保证其中 server_name www.benet.com; 该选项都不同来进行区分。
  • 可以创建访问日志来专门查看
  • access_log logs/www.benet.com.access.log;
  • 基于端口与IP修改不同server中的listen即可
  • Lamp的部署
  • 去掉虚拟主机的部分,并安装mysql
  • yum 安装Mariiadb
  • 初始化: /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
  • 设置密码,两种方式
  • 命令行
  • mysqladmin -u root password '123.com'
  • mysql数据库语法
  • set password=password(主机,用户,密码吗)
  • php
  • 安装编译环境
  • yum -y install gd libxml2-devel libjpeg-devel libpng-devel
  • 解压并指定配置选项
  • ./configure
  • --prefix=/usr/local/php5
  • --with-gd
  • 图形驱动
  • --with-zlib
  • --with-mysql=mysqlnd 基本mysql函数集
  • --with-mysqli=mysqlnd 扩展mysql函数集
  • --with-config-file-path=/usr/local/php5 配置文件路径
  • --enable-mbstring 编码
  • --enable-fpm (fast-cgi)
  • 编译并进行安装
  • 优化
  • 设置为全局命令
  • 安装zend提高解析php语言的速度
  • 修改php-fpm.conf中的相关参数
  • 将php与nginx集成
  • 方法一
  • 反向代理
  • 在主配置文件中将代理部分取消注释,修改相关参数,将php解析人物交给其他web服务器
  • 调用本机php-fpm模块
  • location / { root /var/www/html; index index.html index.htm index.php; } location ~ \.php$ { root /var/www/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi.conf; }
  • 修改完毕后进行测试