Hostwinds 튜토리얼
에 대한 검색 결과:
목차
태그 : Cloud Servers, SSL, VPS
Nginx는 강력한 도구입니다. 여러 응용 프로그램, 웹 사이트,로드 균형 조정 된 응용 프로그램 등을 사용할 수 있습니다. 이러한 유연성은 거의 인간이 읽을 수있는 구성 파일을 사용하는 상대적으로 간단한 구성 시스템에 의해 전원이 공급됩니다. 이 안내서는 SSL을 사용하여 NGINX 역방향 프록시를 설정하는 방법을 보여줍니다. Hostwinds 클라우드 VPS.
이 가이드는 명령 줄을 통해 Linux 기반 시스템을 사용하는 일반적인 이해를 맡고 다음 전제 조건을 더 가정합니다.
Nginx-full 패키지의 기본값은 동적 공유 가상 호스트 환경입니다. 각 가상 호스트에 대한 구성 파일은 여기에서 사용할 수 있습니다.
/etc/nginx/sites-available/
이 위치에는 다음과 같은 파일이 있습니다. 기본 기본 템플릿으로 사용할 수 있습니다. 그러나이 가이드에서 새 구성 파일을 수동으로 만들고 필요에 따라 채우십시오. 일단 루트가 아닌 사용자로 로그인 한 후이 명령을 실행하여 프로세스를 시작하십시오.
sudo touch /etc/nginx/sites-available/domain.tld
교체하십시오 도메인 - TLD. 실제로 사용하고있는 도메인으로.
그런 다음 우리는 필요한 작업을 수행하도록 해당 파일을 수정하여 해당 파일을 수행합니다. 우리는 사용할 것입니다 정력 이 가이드에서 텍스트 편집기로. 당신은 사용할 수 있습니다 나노 또는 개인 취향에 따라 다른 텍스트 편집기.
sudo vim /etc/nginx/sites-available/domain.tld
이제 파일 이이 파일에 다음 텍스트를 추가하십시오. 지시 된 텍스트를 수정하여 도메인을 참조하거나 앱에서 앱이 사용 중이고 SSL 인증서 경로를 참조하십시오. 이 파일은 역방향 프록시의 주요 구성이됩니다.
###
# This Section listens on port 80 for your domain and rewrites the request
# to HTTPS for us
###
server {
listen 80;
server_name domain.tld www.domain.tld; # Edit this to your domain name
rewrite ^ https://$host$request_uri permanent;
}
###
# This is all the configuration declarations that help SSL Function.
###
server {
listen 443 ssl;
server_name domain.tld;
# Edit this to your domain name
ssl_certificate /etc/letsencrypt/live/domain.tld/fullchain.pem;
# If you use Lets Encrypt, you should just need to change the domain.
ssl_certificate_key /etc/letsencrypt/live/domain.tld/privkey.pem;
# If you use Let's Encrypt, you should just need to change the domain.
ssl_session_cache builtin:1000 shared:SSL:10m;
# Defining option to share SSL Connection with Passed Proxy
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
# Defining used protocol versions.
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
# Defining ciphers to use.
ssl_prefer_server_ciphers on;
# Enabling ciphers
access_log /var/log/nginx/access.log;
# Log Location. Can be anywhere. Make sure the nginx user defined in /etc/nginx/nginx.conf has r/w permissions
###
# This is the juicey part of the config file, handing off relevant data to
# our back-end app running on port 3000
# Nothing should need to be changed here, unless port 3000 is not the port
# you're using.
# Furthermore, if you're using a socket to serve your app (PHP comes to
# mind), you can define a unix:.sock location here as well
###
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:3000;
proxy_read_timeout 90;
}
}
파일을 저장하고 텍스트 편집기를 종료하십시오.
이제 구성이 생성되었으므로 Nginx에로드시 파일을 확인하도록 지시해야합니다. 심볼릭 링크를 만들 것입니다.
sudo ln -s /etc/nginx/sites-avaialable/domain.tld /etc/nginx/sites-enabled/domain.tld.conf
다음으로 Nginx 시스템 서비스를 다시 시작하기 전에 구성을 테스트합니다.
sudo nginx -t
그 후 테스트를 실행하고 성공하면 다음 메시지를 출력해야합니다.
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
이제 구성 파일이 크래시를 일으키지 않으므로 NGINX 서비스를 다시 시작하고 앱을 테스트 해 봅시다.
sudo systemctl restart nginx
이제 정의 된 포트에서 실행중인 앱에 대한 액세스 권한이 있습니다. 도메인 - TLD. 이전에 생성 된 Nginx 구성 파일에 설명 된대로.
작성자 Hostwinds Team / 유월 14, 2019