赞
踩
4.36域名重定向
配置第二个域名:
编辑配置文件:vi /etc/nginx/conf.d/blog.qinkailinux.cc.conf
在 server_name 那一行域名后面再加一个域名 空格分割
再重载nginx –t nginx -s reload
域名重定向:
从a域名跳转到b域名
Vi /etc/nginx/conf.d/blog.qinkailinux.cc.conf 增加
if ( $host = blog.qinkailinux.cc )
{
rewrite /(.*) http://www.qinkai.com/$1 permanet;
}
# nginx –t
# nginx -s reload
测试: curl –x127.0.0.1:80 –I blog.qinkailinux.cc/1.txt
补充:
状态码:200(OK) 404(不存在)304(缓存)301(永久重定向)302(临时重定向)
如果是域名跳转用301; 如果不涉及域名跳转用302
4.37 用户认证
用户认证的目的:实现二次认证,针对一些重要的目录(后台的地址)
配置用户认证:
Vi 配置文件 //添加:
location ~ /admin.php
{
auth_basic “Auth”;
auth_basic_user_file /etc/nginx/user_passwd;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/wwwroot/bbs.qinkailinux.ccKaTeX parse error: Expected 'EOF', got '}' at position 65: …gi_params; }̲ ![在这里插入图片…
会选择下面的
Nginx location 文档:https://github.com/aminglinux/nginx/tree/master/location
4.38 Nginx访问日志
访问日志就是用用户访问网站的记录
配置访问日志:
查看主配置文件:vi /etc/nginx/nginx.conf
log_format main '$remote_addr -
r
e
m
o
t
e
u
s
e
r
[
remote_user [
remoteuser[time_local] “KaTeX parse error: Double superscript at position 34: … '̲status
b
o
d
y
b
y
t
e
s
s
e
n
t
"
body_bytes_sent "
bodybytessent"http_referer” ’
‘“
h
t
t
p
u
s
e
r
a
g
e
n
t
"
"
http_user_agent" "
httpuseragent""http_x_forwarded_for”’;
虚拟主机配置文件:access_log /log/to/path main:
# vi bbs.qinkailinux.cc.conf //修改配置文件
# nginx –t //检查配置文件是否正确
(nginx: [emerg] open() "/data/logs/bbs.access.log" failed (2: No such file or directory))错误提示
解决方法: 创建 /data/logs/bbs.access.log文件
# nginx -s reload //重载
nginx: [error] invalid PID number "" in "/var/run/nginx.pid" //报错提示
# nginx -c /etc/nginx/nginx.conf 解决错误
# cat /data/logs/bbs.access.log 查看日志文件
Nginx内置变量:https://github.com/aminglinux/nginx/blob/master/rewrite/variable.md
4.39-日志不记录静态文件
日志里面不记录静态文件:
在访问日志里,过滤掉一些图片.js.css类的请求日志。因为这样的请求日志没有多大用,而且会占用很大的磁盘空间。
如何配置?
在虚拟主机配置文件增加配置
# vi bbs.qinkailinux.cc.conf
#charset koi8-r;
location ~* .(png|ipeg|gif|js|css|bmp|flv)$
{
access_log off;
}
# nginx –t
# nginx -s reload
补充:tail –f /data/logs/bbs.access.log //-f选项可以动态地查看一个文件的内容
可以清空一个文件内容
~* 表示不区分大小写的匹配 后面跟正则表达式 “.”表示任意一个字符
4.40 日志切割
为什么要做日志切割?
/data/logs/ 里面有很多访问日志。 如果日志越来越大,可能有一天会把整个磁盘写满。你可以想象一下一个日志有100G你如何查看这个日志?
(cat less tail vi)
系统里面有一个日志切割的服务
工具 logrotate.conf
daily指定转储周期为每天
weekly指定转储周期为每周
monthly指定转储周期为每月
dateext在文件末尾添加当前日期
compress通过gzip 压缩转储以后的日志
Nginx的日志切割配置文件:
/etc/logrotate.d/nginx
内容: # cat /etc/logrotate.d/nginx
/var/log/nginx/.log /data/logs/nginx/.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
create 640 nginx adm
sharedscripts
postrotate
if [ -f /var/run/nginx.pid ]; then
kill -USR1 cat /var/run/nginx.pid
fi
endscript
}
测试执行:logrotate –vf /etc/logratate.d/nginx
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。