1. 安装 MySQL:
查看 MySQL 是否启动:
ps aux | grep mysqld
错误信息:
2. 安装 PHP:
该账号用来运行 PHP-fpm 服务
如果显示 "test is successful", 就说明配置没问题
设置 PHP-fpm 开机启动:
chkconfig PHP-fpm on
检测 PHP-fpm 是否启动:
ps aux | grep PHP-fpm
错误信息:
编译时错误:
make 时错误:
3. 安装 NGINX:
nginx 下载网址: http://nginx.org/download/nginx-1.10.3.tar.gz
编写脚本命令:
测试是否解析 PHP
4.nginx 配置:
1. 默认虚拟主
加载 / usr/local/nginx/conf/vhost / 下面的所有以. conf 结尾的文件
default_server 标记的时默认虚拟主机
2. 用户认证:
auth_basic: 打开认证
auth_basic_user_file: 指定用户密码文件
关闭防火墙: systemctl stop firewalld
401: 该网站需要认证
某个目录做用户认证:
3. 域名重定向:
4.nginx 访问日志:
combined_realip: 日志格式的名字
$remote-addr: 访问网站的用户的出口 IP
$http_x_forwarded_for: 代理服务器的 IP, 如果使用了代理, 则会记录代理的 IP
$time_local: 当前的时间
$host: 访问的主机名
$request_uri: 访问的 URL 地址
$status: 状态码
$http_referer:referer 地址
$http_user_agent:user_agent
access_log: 指定日志的存储路径
nginx 日志切割脚本
5. 配置静态文件不记录日志并添加过期时间:
location ~: 指定对应的静态文件
expires: 配置过期时间
access_log: 配置为 off 就可以不记录访问日志
6.nginx 防盗链:
7. 访问控制:
拒绝某几个 IP:
黑名单:
针对 user_agent 做出限制
8.nignx 解析 PHP:
9.nginx 代理
前两行不用解释, 和普通的虚拟主机 - - 样, 不同的是后面 proxy 相关的语句. Proxy_ pass 指定要代
理的域名所在的服务器 IP, 这里的 IP 就是阿铭的论坛所在服务器 IP, 你可以 ping ask apelearm.com 获取
到该 IP. 后面的三行为定义发往后端 web 服务器的请求头, 第二行必须有, 否则代理不成功, 它表示
后端 Web 服务器的域名和当前配置文件中的 server_ name 保持一致 (即 ask apelearm.com), 第三行和第
四行可以省略, 前面在讲述 Nginx 日志格式的时候介绍过这两个参数, 表示的含义是 - 一样的. 配置文
件保存后, 重新加载 Nginx 服务并验证.
和简单的代理有所不同, 负载均衡多了一个 upstream, 在这里定义后端的 Web Server, 可以是一
个, 也可以是多个. 其中 ip. _hash 为负载均衡的算法, 它表示根据 IP 地址把请求分到不同的服务器上.
比如用户 A 的 IP 为 1.1.1.1, 用户 B 的 IP 为 2.2.2.2, 则 A 访问的时候会把请求转发到第 - - 个 Web Server 上,
而 B 访问的时候会到第二二 个 Web Server. 上. 这种算法用在把 session 存到本机磁盘上的情况, 至于什么是
session, 你访问猿课看课程需要登录, 那么你 - - 旦登录, 服务器上就会记录你的 session
信息, 这个 session 会保存一 段时间. 比如, 你看了一个 10 分钟的课程, 然后去开会了, 过去半小时再
打开网站, 你依然是登录的状态, 这就是因为 session 还存在这台服务器上. 下面是测试结果:
10.nginx 配置 ssl
openss1 命令如果没有, 使用 yum install -y openss1 安装. 这一步是生成 key 文件 (通常称为 "私钥" ),2048
为加密字符串长度, 会让我们输入一个密码, 密码不能太短, 否则不成功
这一步是把刚刚生成的 tmp.key 再转换成 aminglinux.key, 目的是删除刚才设置的密码, 如果 key 文件有密码,
则必须在 Nginx 加载它的时候输入它的密码, 因此很不方便
5.PHP-fpm 配置:
1.PHP-fpm 的 pool
2.PHP-fpm 的慢执行日志:
第一行定义超时时间, 即 PHP 的脚本执行时间只要超过 1 秒就会记录日志, 第二行定义慢执行日志
的路径和名字. 以后, 遇到 PHP 网站访问卡顿的问题时, 要记得去查看这个慢执行日志
3.PHP-fpm 定义 open_basedir:
4.PHP-fpm 远程管理
来源: http://www.bubuko.com/infodetail-3364418.html