본문 바로가기

PHP

PHP: 세션 id를 검증 - Nginx를 활용하여 접근 허용/비허용 하는 예제

728x90
반응형

/profile/[mb_id] 를 통해서 접근시, mb_id에 해당하는 session id를 확인하고,

검증 실패시 다른곳(/login)으로 redirect 또는 비허용 페이지임을 안내하는 예제

 

1. profile.php 예제 커밋

https://github.com/Junanjunan/next_php/commit/e6d9d1261818855f884a6a4021776a7fcdd1850e

 

 

2. Nginx 설정

server {
    listen 80;
    server_name localhost;

    root /home/user/my_php_project;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }

    ## 추가된 해당 부분 ##
    location /profile/ {
        rewrite ^/profile/([a-zA-Z0-9]+)$ /profile.php?mb_id=$1 last;
    }
    #####################

	location ~ /\.ht {
        deny all;
    }
}

 

728x90
반응형