[root@localhost conf]#vim /apps/nginx/conf/fastcgi.conf
这个存放的和反向代理相关的配置
[root@localhost conf]#file fastcgi.conf 查看文件的格式
fastcgi.conf: ASCII text
[root@localhost conf]#file 2345_image_file_copy_7.jpg 查看图片的格式
2345_image_file_copy_7.jpg: JPEG image data, JFIF standard 1.01
[root@localhost conf]#vim +15 nginx.conf +15表示修改15行
nginx绑定的时候不绑定第一个核心
[root@localhost conf]#grep -v "#" nginx.conf 过滤掉带有注释的行
[root@localhost conf]#grep -v "#" nginx.conf |grep -v "^$" 在过滤配置文件的空行
[root@localhost conf]#cd /apps/nginx/html/ 进入查看页面错误的行
[root@localhost html]#ls
50x.html index.html linux36
[root@localhost html]#vim 50x.html 不存在的页面就会报这个
[root@localhost html]#vim /apps/nginx/conf/nginx.conf
error_page 500 502 503 504 404 /50x.html; 添加一行404的页面错误提示
[root@localhost html]#nginx -s reload 重新加载
[root@localhost html]#vim /apps/nginx/html/50x.html 写一个属于自己的错误页面
linux36
[root@localhost html]#mkdir /apps/nginx/pid创建一个pid的文件夹
[root@localhost conf]#vim nginx.conf 修改配置文件
user nginx nginx; 修改进程的组
pid /apps/nginx/pid/nginx.pid; 这里需要定义具体的名称
daemon off; 前台运行Nginx服务用于测试、docker等环境。 这个一般在服务器上用,后边如果用容器需要,仅用于调试,
[root@localhost conf]#chown nginx.nginx /data /apps/nginx/ -R 把权限赋值给数据目录
[root@localhost conf]#vim nginx.conf
#daemon off; 把配置文件的这行注释掉
修改配置文件[root@localhost conf]#vim nginx.conf
master_process off; 这个就相当于是否开启Nginx的master-woker工作模式。让他就剩下主进程 ,
这种一般用与二次开发的,调试开发上的bug,主进程直接响应有没有问题,如果没有问题的话,平时这两个功能都不用
[root@localhost conf]#ps -ef |grep nginx 查看当前的进程
root 33776 1 0 09:03 ? 00:00:00 nginx
root 33795 16671 0 09:03 pts/1 00:00:00 grep --color=auto nginx
[root@localhost conf]#vim nginx.conf
events {
worker_connections 100000; 设置
use epoll; 使用epoll事件驱动,Nginx支持众多的事件驱动,比如select、poll、epoll,只能设置在events模块中设置。
}
[root@localhost conf]#nginx -t 检查
nginx: the configuration file /apps/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /apps/nginx/conf/nginx.conf test is successful
[root@localhost conf]#nginx -s reload 加载这个服务
[root@localhost conf]#vim nginx.conf
accept_mutex on; 设置为on避免惊群
events {
worker_connections 100000; 优化单个进程最大连接数
use epoll; 使用epoll
accept_mutex on; 优化同一时刻只有一个请求而避免多个睡眠进程被唤醒的设置,on为防止被同时唤醒,多个进程同时修改避免惊群
multi_accept on; 优化进程的并发,可以处理多个新的连接
}
[root@localhost conf]#nginx -t
nginx: the configuration file /apps/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /apps/nginx/conf/nginx.conf test is successful
[root@localhost conf]#nginx -s reload
[root@localhost conf]#vim +18 nginx.conf 在http上边的是全局配置,在上边改,下边的都会剩下
user nginx nginx;
worker_processes auto;
#worker_cpu_affinity 0001 0010;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid /apps/nginx/pid/nginx.pid;
#daemon off;
#master_process off;
events {
worker_connections 100000;
use epoll;
accept_mutex on;
multi_accept on;
}
在http里配,会应用多个配置进程,多个配置项
http {
[root@localhost conf]#vim +18 nginx.conf
keepalive_timeout 65 60; 告诉浏览器支持60秒的会话时常实际支持65秒
[root@localhost conf]#nginx -s reload
[root@localhost conf]#vim +18 nginx.conf
server {
listen 80;
server_name localhost default_server; 如果网页没有出现,就是使用默认的服务页面去替代
charset utf-8; 修改格式成utf-8 这个必须修改让他支持中文
[root@localhost conf]#nginx -s reload
[root@localhost conf]#vim +18 nginx.conf
location ~ /\.password { 把这个让他不访问这个文件把这个点转义了\.
deny all;
}
}
[root@localhost conf]#cp /etc/passwd /apps/nginx/html/.password 拷贝过来来测试下
[root@localhost conf]#vim nginx.conf
location ~ /\.password {
deny all;
}
}
把这三项修改了,取消注释
[root@localhost conf]#nginx -s reload
在网站上线之前,会邀请一些安全的来,扫描下,看下是否有漏洞
[root@localhost conf]#mkdir -pv /data/nginx/html/{pc,mobile} 创建文件夹和目录
mkdir: created directory ‘/data/nginx’
mkdir: created directory ‘/data/nginx/html’
mkdir: created directory ‘/data/nginx/html/pc’
mkdir: created directory ‘/data/nginx/html/mobile’
[root@localhost conf]#vim /data/nginx/html/pc/index.html 创建pc端的页面
pc
[root@localhost conf]#vim /data/nginx/html/mobile/index.html 创建一个手机端的页面
mobile
作为运维人员,让外网能访问页面就可以了,只要能访问即可,公司会有开发人员写代码。
[root@localhost conf]#vim /apps/nginx/conf/server/www_magedu_com.conf
server {
listen 80;
server_name www.mageudu.net; 修改这个名称,注意不要和其他的起冲突
location / {
root /data/nginx/html/pc; 这个是pc端的页面
index index.html;
}
}
[root@localhost conf]#cd /apps/nginx/conf/server/
[root@localhost server]#mv www_magedu_com.conf www_magedu_net.conf 修改名称
[root@localhost server]#cp www_magedu_net.conf mobile_magedu_net.conf 复制粘贴
[root@localhost server]#vim mobile_magedu_net.conf
server {
listen 80;
server_name mobile.mageudu.net;
location / {
root /data/nginx/html/mobile;
index index.html;
}
}
[root@localhost server]#nginx -t
[root@localhost server]#vim mobile_magedu_net.conf
server {
listen 80;
server_name mobile.mageudu.net m.magedu.net; 添加一个域名 访问多个站点
location / {
root /data/nginx/html/mobile;
index index.html;
}
}
[root@localhost server]#nginx -s reload 在加载服务
[root@localhost server]#cd /apps/nginx/conf/server 进入
[root@localhost server]#vim www_magedu_net.conf 修改
server {
listen 80;
server_name www.mageudu.net;
location / {
root /data/nginx/html/pc;
index index.html;
}
location /imgae {
index index.html;
root /data/nginx/html/pc; 在添加一个pc端支持图片的
}
}
[root@localhost server]#mkdir /data/nginx/html/pc/image 创建一个页面
[root@localhost server]#cd /data/nginx/html/pc/image
[root@localhost image]#mv 2345_image_file_copy_3.jpg 1.jpg
修改名称
[root@localhost nginx]#cd /apps/nginx/conf/server
[root@localhost server]#vim www_magedu_net.conf
server {
listen 80;
server_name www.mageudu.net;
location / {
root /data/nginx/html/pc;
index index.html;
}
location /image {
index index.html;
#root /data/nginx/html/pc;
alias /data/nginx/html/pc; 修改成别名
}
}
[root@localhost server]#nginx -s reload
[root@localhost server]#chown nginx.nginx /data/nginx/ -R 加权限
[root@localhost server]#cd /data/nginx/html/pc/image
[root@localhost image]#vim index.html 进入到图片路径创建页面
image page
[root@localhost server]#cd /apps/nginx/conf/server 进入
[root@localhost server]#vim www_magedu_net.conf 修改配置文件
server {
listen 80;
server_name www.mageudu.net;
location / {
root /data/nginx/html/pc;
index index.html;
}
location /image {
index index.html;
root /data/nginx/html/pc; 换成root
# alias /data/nginx/html/pc;
}
}
[root@localhost server]#cd /apps/nginx/conf/server
[root@localhost server]#vim www_magedu_net.conf
location /1.jpg { 添加精确匹配
root /opt;
}
}
[root@localhost server]#nginx -s reload 加载
[root@localhost server]#cd /opt/
[root@localhost opt]#mv 2.jpg 1.jpg 修改为1.jpg
[root@localhost opt]#cd /apps/nginx/conf/server
[root@localhost server]#vim www_magedu_net.conf
server {
listen 80;
server_name www.mageudu.net;
location / {
root /data/nginx/html/pc/image;
index index.html;
}
location = /1.jpg {
root /opt;
}
}
[root@localhost server]#nginx -s reload
[root@localhost server]#vim www_magedu_net.conf
server {
listen 80;
server_name www.mageudu.net;
location / {
root /data/nginx/html/pc/image;
index index.html;
}
# location = /1.jpg { 注释掉查看显示的是哪个
# root /opt;
# }
}
a.?表示可以大小写
[root@localhost image]#vim /apps/nginx/conf/server/www_magedu_net.conf
server {
listen 80;
server_name www.mageudu.net;
location / {
root /data/nginx/html/pc/image;
}
location ~ /A.?\.jpg {
root /data/nginx/html/pc/image;
}
}
~表示区分大小写
[root@localhost server]#cd /data/nginx/html/pc/image/
[root@localhost image]#mv 3.jpg Aa.jpg
[root@localhost image]#cp Aa.jpg Aa.JPG 修改成大写的jpg
[root@localhost image]#nginx -s reload
[root@localhost image]#vim /apps/nginx/conf/server/www_magedu_net.conf 1
2 files to edit
server {
listen 80;
server_name www.mageudu.net;
location / {
root /data/nginx/html/pc/;
}
location ~* /A.?\.jpg { ~* 不区分大小写
root /data/nginx/html/pc/image;
}
}
静态资源都是使用的不区分大小写
如果使用大小写区分的话,资源可能 访问不了
[root@localhost image]#cp Aa.jpg Aa.JpG 拷贝文件 这个 文件既有大写又有小写,这样在
[root@localhost image]#vim /apps/nginx/conf/server/www_magedu_net.conf
location ~* \.(gif|jpg|jpeg|bmp|png|tiff|tif|ico|wmf|js)$ {
root /data/nginx/html/pc/static;
index index.html;
}
}
[root@localhost image]#mkdir /data/nginx/pc/static -pv
mkdir: created directory ‘/data/nginx/pc’
mkdir: created directory ‘/data/nginx/pc/static’
[root@localhost pc]#mkdir /data/nginx/html/pc/static 创建目录
[root@localhost pc]#cp /etc/passwd /data/nginx/html/pc/static/linux36.js 拷贝文件过去
[root@localhost pc]#nginx -s reload
[root@localhost image]#cd /data/nginx/html/pc/image/
[root@localhost image]#cp 1.jpg ../static/aa.jpg
[root@localhost image]#vim /apps/nginx/conf/server/www_magedu_net.conf
server {
listen 80;
server_name www.mageudu.net;
location / {
root /data/nginx/html/pc/;
}
# location ~* /A.?\.jpg {
# root /data/nginx/html/pc/image;
# }
# location ~* \.(gif|jpg|jpeg|bmp|png|tiff|tif|ico|wmf|js)$ {
# root /data/nginx/html/pc/static;
# index index.html;
# }
location ^~ /static { 当访问静态资源的目录的时候 ,这会必须访问static开头的才可以访问到图片
root /data/nginx/html/pc; 就定位到这里
index index.html;
}
}
[root@localhost pc]#nginx -s reload
[root@localhost pc]#cp /data/nginx/html/pc/image/1.jpg . 拷贝到当前目录下
[root@localhost pc]#rm -rf 1.jpg 删除
[root@localhost pc]#mv 2345_image_file_copy_7.jpg 1.jpg 修改名称
[root@localhost pc]#cp static/aa.jpg static/1.jpg
[root@localhost ~]#vim /etc/hosts
172.22.90.10 www.magedu.net 开启一个本地解析
[root@localhost ~]#curl www.magedu.net 现在可以访问
Linux 36
[root@localhost server]#vim www_magedu_net.conf
server {
listen 80;
server_name www.magedu.net;
location / {
root /data/nginx/html/pc/;
deny 172.22.90.7; 禁止这个ip地址 的访问
deny 192.168.0.0; 禁止这个网段的访问
allow all; 允许所有的人访问
}
# location ~* /A.?\.jpg {
# root /data/nginx/html/pc/image;
# }
# location ~* \.(gif|jpg|jpeg|bmp|png|tiff|tif|ico|wmf|js)$ {
# root /data/nginx/html/pc/static;
# index index.html;
# }
location ^~ /static {
root /data/nginx/html/pc;
index index.html;
}
}
[root@localhost server]#nginx -s reload 重新加载服务
[root@localhost server]#vim www_magedu_net.conf
server {
listen 80;
server_name www.magedu.net;
location / {
root /data/nginx/html/pc/;
allow 172.22.90.7; 允许这个机器访问
deny 192.168.0.0;
allow all;
}
[root@localhost server]#nginx -s reload 重新加载
[root@client ~]#curl http://www.magedu.net/index.html
pc 再次访问就没有问题了
[root@localhost server]#vim www_magedu_net.conf
location /login {
root /data/nginx/html/pc; 添加加密的模块
index index.html;
}
}
[root@localhost server]#mkdir /data/nginx/html/pc/login 创建文件夹
[root@localhost server]#vi /data/nginx/html/pc/login/index.html
login
[root@localhost server]#nginx -s reload
[root@localhost yum.repos.d]#yum install httpd-tools -y 安装软件包
[root@localhost yum.repos.d]#htpasswd -h 查看帮助
[root@localhost yum.repos.d]#htpasswd -cbm /apps/nginx/.htpassword user1 123456 创建第一个账户和密码,文件在.htpassword里的
Adding password for user user1
-c创建一个新文件。
-b使用命令行中的密码,而不是提示输入密码。
-m强制MD5加密密码(默认)。
[root@localhost yum.repos.d]#htpasswd -bm /apps/nginx/.htpassword user2 123456 创建一个密码
Adding password for user user2
[root@localhost login]#vim /apps/nginx/conf/server/www_magedu_net.conf
location /login {
root /data/nginx/html/pc;
index index.html;
auth_basic "login password";
auth_basic_user_file /apps/nginx/.htpassword; 创建引用这个登陆的模块
}
[root@localhost server]#ll /apps/nginx/.htpassword 一定要检查验证的文件是否存在
-rw-r--r-- 1 root root 88 May 30 00:30 /apps/nginx/.htpassword
[root@localhost server]#nginx -s reload
[root@localhost login]#vim /apps/nginx/conf/server/www_magedu_net.conf
server {
listen 80;
server_name www.magedu.net;
error_page 500 502 503 504 404 /error.html; 添加错误日志的访问页面
location / {
root /data/nginx/html/pc/;
allow 172.22.90.7;
deny 192.168.0.0;
allow all;
}
# location ~* /A.?\.jpg {
# root /data/nginx/html/pc/image;
# }
# location ~* \.(gif|jpg|jpeg|bmp|png|tiff|tif|ico|wmf|js)$ {
# root /data/nginx/html/pc/static;
# index index.html;
# }
location ^~ /static {
root /data/nginx/html/pc;
index index.html;
}
location /login {
root /data/nginx/html/pc;
index index.html;
auth_basic "login password";
auth_basic_user_file /apps/nginx/.htpassword;
}
location = /error.html { 添加错误日志的文件
root /data/nginx/html/pc; 添加错误日志的目录
}
}
[root@localhost login]#vim /data/nginx/html/pc/error.html 创建错误日志的网页
pc error page
[root@localhost login]#nginx -s reload
[root@localhost ~]#ll /apps/nginx/logs/ nginx日志存放在这个目录里
total 9940
-rw-r--r-- 1 nginx nginx 10143005 May 30 01:14 access.log 访问日志
-rw-r--r-- 1 nginx nginx 29096 May 30 01:14 error.log 错误日志
[root@localhost server]#cd /apps/nginx/logs/
[root@localhost logs]#ps -ef |grep nginx 查看模块的信息
root 1560 1 0 May29 ? 00:00:00 nginx: master process nginx
nginx 13033 1560 0 01:11 ? 00:00:00 nginx: worker process
nginx 13034 1560 0 01:11 ? 00:00:00 nginx: worker process
nginx 13035 1560 0 01:11 ? 00:00:00 nginx: worker process
nginx 13036 1560 0 01:11 ? 00:00:00 nginx: worker process
root 13793 1533 0 01:26 pts/0 00:00:00 grep --color=auto nginx
[root@localhost logs]#rm -rf access.log 删除访问日志
[root@localhost logs]#touch access.log 创建一个日志
[root@localhost logs]#chown nginx.nginx access.log 把用户的权限给这个日志
除非把这个文件的indo改成之前一样的,或者加载和除了重启
[root@localhost logs]#nginx -s reload 重新加载
[root@localhost logs]# echo > access.log 清楚日志
[root@localhost server]#vim www_magedu_net.conf
server {
listen 80;
server_name www.magedu.net;
error_page 500 502 503 504 404 /error.html;
access_log /apps/nginx/logs/www_magedu_net_access.log; 这个是访问日志的路径
error_log /apps/nginx/logs/www_magedu_net_error.log; 这个是错误日志的路径
location / {
root /data/nginx/html/pc/;
allow 172.22.90.7;
deny 192.168.0.0;
allow all;
}
[root@localhost ~]#cd /apps/nginx/logs/ 这个目录
[root@localhost logs]#ll www_magedu_net_access.log |awk '{print $5}' 查看这个文件的大小,一般大于2个g先,做成压缩包,然后在echo >清空
781
[root@localhost conf]#cat /apps/nginx/logs/www_magedu_net_access.log |wc -l 查看有多少行日志
4