分类 Nginx 下的文章

好久没发新文章啦。今天打算看看 Nginxaccess.log 都有哪些小可爱,结果发现里面乱的有点难受。然后我就找到了这个好玩意:log_format

根据官网文档介绍,使用 log_format 可以自定义日志记录的格式。 官网文档戳这里
下面整理了一些常用的变量定义:

$remote_addr 客户端的远程地址
$remote_user   客户端的远程用户名 (大部分情况下好像抓不到这个值)
$time_local 访问的时间与时区
$request HTTP请求头部
$status HTTP状态码, 例如:200/301/404
$body_bytes_sent 服务器发送给客户端的响应body字节数
$http_referer HTTP访问来源 (如果是直接访问网站的话这个值为空, 如果是从A站到B站的话, 这个值为A站的URL)
$http_user_agent 客户端的UA (用户浏览器信息)
$http_x_forwarded_for 客户端的代理地址 (如果代理服务器开启了禁止原始IP记录的话, 这里将没有值)

今天莫名其妙的发现静态HTML文件发送POST请求后Nginx返回了错误代码405,百度一看才发现原来静态HTML不允许POST请求。
所以需要向下面这样修改:

-- 下文转载自 "https://www.w3h5.com/post/419.html".
修改 Nginx 的配置文件:nginx.conf
在你的nginx的虚拟主机配置文件中添加以下内容:"error_page 405 =200 $uri;"

server {
  # 假如加入这是你的虚拟主机配置文件:
  listen 80;
  root localhost;
  index index.php index.html;

  location / {
    try_files $uri $uri/ /index.html;
  }
  # To allow POST on static pages 允许静态页使用POST方法
  error_page  405 =200 $uri;
}