nginx 설치
sudo apt update
sudo apt install nginx
nginx -v # nginx 버전 확인
mysql 설치
sudo apt update
sudo apt install mysql-server
sudo mysql_secure_installation
sudo mysql -u root -p
index 파일 생성
projectName = 원하는 프로젝트 이름 ex. santa
cd /var/www
sudo mkdir -p projectName/html
sudo chmod -R 755 /var/www/projectName/html
sudo vi /var/www/projectName/html/index.html
서버 블록 생성
cd /etc/nginx/sites-available
sudo vi projectName
서버 블록
server {
listen 80;
listen [::]:80;
root /var/www/projectName/html;
index index.html index.htm index.nginx-debian.html;
server_name // 연결할 url //
location / {
try_files $uri $uri/ =404;
}
}
심볼릭 링크
파일 및 디렉토리에 대한 링크를 만들어준다.
sudo ln -s /etc/nginx/sites-available/projectName /etc/nginx/sites-enabled/
#sites-available: 설정을 저장하는 곳
#sites-enabled: 설정을 적용하는 곳
nginx.conf 수정
cd /etc/nginx
sudo vi nginx.conf
server_names_hash_bucket_size 64; # 주석해제
다시 start
sudo nginx -t
sudo service nginx restart (sudo systemctl restart nginx)
서브도메인 (dev, prod)
sudo nginx -t
sudo service nginx restart (sudo systemctl restart nginx)
server {
listen 80;
listen [::]:80;
root /var/www/projectName/html/dev;
index index.html index.htm index.nginx-debian.html;
server_name // 연결할 url //
location / {
try_files $uri $uri/ =404;
}
}
서브 도메인 별 루트 폴더 생성
cd var/www/projectName/html
sudo mkdir dev
cd dev
sudo vi index.html
HTTPS 적용 (Let's Encrypt)
certbot 설치
cd var/www/projectName/html
sudo mkdir dev
cd dev
sudo vi index.html
redirection
cd /etc/nginx/sites-available
sudo vi projectName
server {
listen 80;
server_name ip주소;
return 301 https://url$request_uri;
}
'Backend Study > Server' 카테고리의 다른 글
[리눅스] 용량부족 해결 (0) | 2023.02.05 |
---|---|
다른 계정의 RDS 스냅샷으로 마이그레이션하기 (0) | 2023.01.15 |
네트워크 계층별 프로토콜 (OSI 7 Layer) (0) | 2022.09.01 |
쿠키, 세션, JWT (0) | 2022.08.23 |
From 절 서브 쿼리 (=인라인뷰 서브 쿼리) (0) | 2022.08.01 |