본문 바로가기

nginx

[draft] Nginx에서 map 디렉티브를 사용하는 방법 Nginx에서 map 디렉티브를 사용하는 방법map 디렉티브는 Nginx에서 변수를 다른 값으로 매핑할 때 사용됩니다. 이 디렉티브를 사용하면 특정 조건에 따라 변수의 값을 동적으로 변경할 수 있습니다. 예를 들어 호스트명에 따라 다른 설정을 적용하거나 특정 경로에 대한 요청을 다른 서버로 프록시하는 등의 작업에 활용됩니다. 기본적인 map 디렉티브의 사용 예제입니다.http { map $host $my_var { default "default_value"; site.com "value_for_site"; www.site.com "value_for_www_site"; m.site.com "value_for_m_site"; } serv.. 더보기
[draft] 우분투 패키지 관리자에서 GPG 키 관련 오류 해결 우분투 패키지 관리자에서 GPG 키 관련 오류 해결GPG 키 관련 문제가 발생하면 apt-keyring을 사용하여 오류를 해결합니다.$ sudo apt-get updateHit:1 https://mirror.kakao.com/ubuntu jammy InRelease...Fetched 2,857 kB in 2s (1,337 kB/s)Reading package lists... DoneW: https://nginx.org/packages/ubuntu/dists/jammy/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.1.. 더보기
Amazon EC2 t4g.small 인스턴스에서 Nginx와 PHP-FPM을 연동하여 테스트 페이지를 설정하는 방법 Amazon EC2 t4g.small 인스턴스에서 Nginx와 PHP-FPM을 연동하여 테스트 페이지를 설정하는 방법 1. Nginx 및 PHP-FPM 설치 2. PHP-FPM 구성 파일 수정 sudo mkdir /var/log/php-fpm php-fpm.conf 파일 설정 sudo vim /etc/php/8.1/fpm/php-fpm.conf [global] pid = /var/run/php/php-fpm.pid error_log = /var/log/php-fpm/error.log include = /etc/php/8.1/fpm/pool.d/*.conf www.conf 파일 설정 sudo vim /etc/php/8.1/fpm/pool.d/www.conf [www] user = www-data group.. 더보기
Amazon Linux에 NGINX를 최신 버전으로 설치하는 방법 Amazon Linux에 NGINX를 최신 버전(안정 버전)으로 설치하는 방법테스트 환경운영체제 버전$ cat /etc/os-release | egrep "PRETTY_NAME"PRETTY_NAME="Amazon Linux 2023"<ul style="list.. 더보기
[draft] Cloudflare 프록시 환경에서 Nginx의 액세스 로그에 클라이언트의 실제 IP 주소를 남기는 방법 Cloudflare 프록시 환경에서 Nginx의 액세스 로그에 클라이언트의 실제 IP 주소를 남기는 방법Nginx 서버에서 클라이언트의 실제 IP 주소를 얻으려면 X-Forwarded-For 헤더를 사용해야 합니다. Cloudflare는 이 헤더를 통해 클라이언트의 IP 주소를 전달하므로 Nginx에서 이 헤더를 읽어야 합니다. 1. Nginx 설정에서 --with-http_realip_module 모듈 확인nginx -V2. Nginx 설정 파일 편집sudo vim /etc/nginx/nginx.confserver { listen 80; server_name your_domain.com; http { log_format main '$remote_addr - $remot.. 더보기
[draft] Nginx 로그 파일을 로테이션 설정하는 방법 Nginx 로그 파일을 로테이션 설정하는 방법(nginx logrotate)Nginx 로그 파일을 주기적으로 로테이션(순환)하여 로그 파일 크기를 관리하고 오래된 로그를 보관하려면 logrotate를 사용할 수 있습니다.Nginx 로그 파일의 로테이션 설정1. logrotate 설정 파일 생성logrotate 설정 파일을 생성하거나 수정합니다.대부분의 리눅스 시스템에서 logrotate 설정 파일은 /etc/logrotate.conf 또는 /etc/logrotate.d/nginx와 같은 경로에 위치할 수 있습니다.sudo vim /etc/logrotate.d/nginx2. logrotate 설정 추가Nginx 로그로테이션 설정을 추가합니다./var/log/nginx/*.log { daily m.. 더보기
[draft] Nginx에서 POST 데이터를 Nginx 로그에 기록하는 방법 Nginx에서 POST 데이터를 Nginx 로그에 기록(로깅)하는 방법Nginx는 웹 서버로서 HTTP 요청을 처리하는 데 사용됩니다. Nginx에서 POST 데이터를 로깅하는 방법은 다음과 같이 두 가지 접근 방식이 있을 수 있습니다. 1. Nginx 설정 파일 편집sudo vim /etc/nginx/nginx.conf1-2. Access 로깅Nginx는 기본적으로 접근 로그를 기록하는 기능을 제공합니다. 이 로그에는 클라이언트의 IP 주소, 요청 메서드, 요청된 URL 등의 정보가 포함됩니다. POST 데이터를 기록하려면 Nginx 설정 파일에서 log_format 디렉티브를 사용하여 로그 형식을 변경해야 합니다.예를 들어, 다음과 같이 설정 파일에 추가할 수 있습니다.http { # 로그 형식.. 더보기
nginx와 php-fpm을 사용하는 경우 *.html 파일에서도 PHP 코드를 실행하도록 설정하는 방법 nginx와 php-fpm을 사용하는 경우 *.html 파일에서도 PHP 코드를 실행하도록 설정하는 방법 테스트 환경 운영체제 버전 정보 $ lsb_release -d Description:Ubuntu 22.04 LTS NGINX 버전 정보 $ nginx -v nginx version: nginx/1.24.0 PHP-FPM 버전 정보 $ php-fpm8.1 -v PHP 8.1.18 (fpm-fcgi) (built: Apr 14 2023 04:39:44) Copyright (c) The PHP Group Zend Engine v4.1.18, Copyright (c) Zend Technologies with Zend OPcache v8.1.18, Copyright (c), by Zend Technologie.. 더보기