>  기사  >  운영 및 유지보수  >  Nginx 프록시 관리자를 사용하여 웹사이트 액세스 로그를 수집하고 분석하는 방법

Nginx 프록시 관리자를 사용하여 웹사이트 액세스 로그를 수집하고 분석하는 방법

PHPz
PHPz원래의
2023-09-26 08:15:171225검색

如何利用Nginx Proxy Manager实现网站访问日志的采集与分析

Nginx 프록시 관리자를 사용하여 웹 사이트 액세스 로그를 수집하고 분석하는 방법

소개:
인터넷의 급속한 발전과 함께 웹 사이트 로그 분석이 중요한 부분이 되었습니다. 웹사이트 접속 로그를 수집 및 분석함으로써 사용자의 행동 습관을 파악하고 웹사이트 성능을 최적화하며 사용자 경험을 향상시킬 수 있습니다. 이 문서에서는 Nginx 프록시 관리자 구성, 웹 사이트 액세스 로그 수집, 로그 데이터 저장 및 분석과 같은 특정 단계를 포함하여 Nginx 프록시 관리자를 사용하여 웹 사이트 액세스 로그를 수집 및 분석하는 방법을 소개합니다. 동시에 참조용으로 관련 코드 예제가 제공됩니다.

1. Nginx 프록시 관리자 구성

  1. Nginx 프록시 관리자 설치
    먼저 Nginx 프록시 관리자를 설치해야 합니다. 공식 홈페이지(https://nginxproxymanager.com/)를 통해 최신 버전의 Nginx Proxy Manager를 다운로드하고, 설명서에 따라 설치하시면 됩니다.
  2. Configure Nginx
    설치가 완료되면 Nginx를 구성해야 합니다. Nginx 구성 파일에 다음 구성 섹션을 추가합니다.
server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        # 其他代理相关配置...
    }
}

그 중 example.com은 프록시할 도메인 이름이고 http://localhost:8080 code>는 실제 웹 서버 주소입니다. <code>example.com为要代理的域名,http://localhost:8080为实际的Web服务器地址。

  1. 配置SSL证书
    如果需要开启HTTPS访问,需要配置SSL证书。可以通过Nginx Proxy Manager的Web界面来完成证书的配置和管理。

二、收集网站访问日志

  1. 启用Nginx访问日志
    在Nginx配置文件中,添加以下配置段:
http {
    access_log /var/log/nginx/access.log;
    # 其他日志相关配置...
}

其中,/var/log/nginx/access.log为日志文件的路径。

  1. 配置日志格式
    为了方便分析和存储,可以配置自定义的日志格式。在Nginx配置文件中,加入以下配置段:
http {
    log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" '
                    '"$http_user_agent" "$http_x_forwarded_for"';

    access_log /var/log/nginx/access.log main;
    # 其他日志相关配置...
}
  1. 重启Nginx
    完成以上配置后,重新启动Nginx服务使配置生效。

三、存储和分析日志数据

  1. 安装ELK Stack
    为了存储和分析日志数据,可以使用ELK Stack(Elasticsearch、Logstash、Kibana)。可以通过官方网站(https://www.elastic.co/)下载最新版本的ELK Stack,并按照文档进行安装。
  2. 配置Logstash
    在Logstash的配置文件中,加入以下配置段:
input {
    file {
        path => "/var/log/nginx/access.log"
        start_position => "beginning"
        sincedb_path => "/dev/null"
        ignore_older => 0
    }
}

filter {
    # 数据过滤配置...
}

output {
    elasticsearch {
        hosts => ["localhost"]
        index => "nginx-%{+YYYY.MM.dd}"
    }
}

其中,/var/log/nginx/access.log

    SSL 인증서 구성
  1. HTTPS 액세스를 활성화해야 하는 경우 SSL 인증서를 구성해야 합니다. 인증서 구성 및 관리는 Nginx 프록시 관리자의 웹 인터페이스를 통해 완료할 수 있습니다.
2. 웹 사이트 액세스 로그 수집

    Nginx 액세스 로그 활성화
  1. Nginx 구성 파일에 다음 구성 섹션을 추가합니다.
  2. elasticsearch.hosts: ["http://localhost:9200"]
  3. 그 중 /var/log/nginx/access.log는 로그 파일의 경로입니다. <br><ol start="2"></ol>
  4. 로그 형식 구성
  5. 분석 및 저장을 용이하게 하기 위해 사용자 정의 로그 형식을 구성할 수 있습니다. Nginx 구성 파일에 다음 구성 섹션을 추가합니다.
  6. rrreee

Restart Nginx
위 구성을 완료한 후 Nginx 서비스를 다시 시작하여 구성을 적용합니다.

🎜🎜3. 로그 데이터 저장 및 분석🎜🎜🎜ELK Stack 설치🎜로그 데이터를 저장하고 분석하려면 ELK Stack(Elasticsearch, Logstash, Kibana)을 사용하면 됩니다. ELK Stack 최신 버전은 공식 홈페이지(https://www.elastic.co/)를 통해 다운로드 후, 설명서에 따라 설치하시면 됩니다. 🎜🎜Logstash 구성🎜Logstash 구성 파일에 다음 구성 섹션을 추가하세요. 🎜🎜rrreee🎜그 중 /var/log/nginx/access.log는 Nginx 액세스 로그 파일의 경로입니다. . 🎜🎜🎜Kibana 구성🎜Kibana 구성 파일에서 다음 구성 항목을 수정합니다.🎜🎜rrreee🎜4. 로그 분석 및 시각화🎜🎜🎜Kibana 방문🎜브라우저에서 Kibana 주소 방문(기본값은 http://localhost :5601) . 🎜🎜인덱스 생성🎜 Kibana에서 Nginx 액세스 로그를 쿼리하고 시각화할 수 있도록 "nginx-*"라는 인덱스를 생성합니다. 🎜🎜쿼리 및 시각화 적용🎜Kibana에서는 다양한 쿼리 및 시각화 차트를 만들어 Nginx 액세스 로그를 분석할 수 있습니다. 예를 들어 방문 수, 방문 소스, 방문 빈도 등과 같은 차트가 포함된 대시보드를 만들 수 있습니다. 🎜🎜🎜결론: 🎜Nginx 프록시 관리자를 사용하여 웹사이트 액세스 로그를 수집하고 분석하면 사용자 행동을 더 잘 이해하고 웹사이트 성능을 최적화하여 사용자 경험을 향상시킬 수 있습니다. 이 글이 독자들이 Nginx Proxy Manager를 사용하여 실제 프로젝트에서 웹 사이트 액세스 로그를 수집하고 분석하는 데 참고 자료가 되기를 바랍니다. 행복하게 사용하시길 바랍니다! 🎜

위 내용은 Nginx 프록시 관리자를 사용하여 웹사이트 액세스 로그를 수집하고 분석하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.