[NginX] Codeigniter를 위한 server config
기본 환경설정 참고
https://www.nginx.com/resources/wiki/start/topics/recipes/codeigniter/
Go API 추가부분은 아래를 참고하였음.
https://wani.kr/posts/2016/07/01/nginx-proxy-settings/
vi /etc/nginx/conf.d/www_telepasi_co_kr.conf
//==> 아래에 임의(예> www_telepasi_co_kr.conf)의 conf파일을 생성하고
//아래의 내용을 입력한다.
############## Domain Redirection
server {
listen 80;
server_name telepasi.com *.telepasi.com;
return 301 http://www.telepasi.co.kr$request_uri;
}
############## Http Configuration
server {
listen 80;
root /telepasi/web/telepasi.com/www;
index index.php index.html;
server_name telepasi.co.kr *.telepasi.co.kr;
#access_log /telepasi/web/telepasi.com/nginxLog/telepasi.co.kr.access.log;
#error_log /telepasi/web/telepasi.com/nginxLog/telepasi.co.kr.error.log;
############# For CI
# set expiration of assets to MAX for caching
location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ {
expires max;
log_not_found off;
}
location / {
# Check if a file or directory index file exists, else route it to index.php.
try_files $uri $uri/ /index.php;
}
# uri가 있는 경우
location uri {
try_files $uri $uri/ /index.html;
}
# PHP reverse proxy 설정
location ~* \.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi.conf;
}
############# For Go API
location /go/api {
# 호출형태 http://www.telepasi.co.kr/go/api/ping
rewrite ^/go/api(/.*)$ $1 break; # url에서 other 뒤에 있는 URL을 전부 그대로 사용.
proxy_pass http://www.telepasi.co.kr:8081; # 8081 port로 Redirection
proxy_set_header X-Real-IP $remote_addr; # 실제 접속자의 IP를 X-Real-IP 헤더에 입혀서 전송.
proxy_redirect off;
}
}
//수정후
systemctl restart php-fpm.service
systemctl restart nginx