#☕️ 백 엔 드 \ # 1. Nginx
설치 하 다.
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel //
configure --prefix=/opt/nginx/ // ,
maks && make install //
mac 아래 설치 방법:
brew install nginx //
알림 정보:
The default port has been set in /usr/local/etc/nginx/nginx.conf to 8080 so that
nginx can run without sudo.
nginx will load all files in /usr/local/etc/nginx/servers/.
To have launchd start nginx now and restart at login:
brew services start nginx
Or, if you don't want/need a background service you can just run:
nginx
홈 브 루 는 자 유 롭 게 소스 코드 를 개방 하 는 패키지 관리 시스템 으로 맥 OS X 시스템 의 소프트웨어 설치 과정 에 사용 된다.
의존 목록:
gcc
컴 파일 러
pcre pcre-devel
configure 프로 세 스에 필요 한 정규 표현 식
zlib zlib-devel
전송 내용 압축
openssl openssl-devel
https 지원 필요
메모: devel 은 일반 가방 을 포함 하고 헤더 파일 이 많아 서 컴 파일 할 때 필요 합 니 다.
Https, SSL 과 OpenSSL 의 삼자 관계
HTTPS
Hyper Text Transfer Protocol over Secure Socket Layer
HTTP 의 암호 화 버 전, 기본 값 은 SSL 을 암호 화 프로 토 콜 로 사용 합 니 다.
SSL
Secure Socket Layer (보안 소켓 층)
클 라 이언 트 와 서버 사이 에 SSL 보안 채널 을 만 드 는 암호 화 프로 토 콜
OpenSSL
--
TLS / SSL 프로 토 콜 의 오픈 소스 구현, 오픈 라 이브 러 리 와 명령 행 프로그램 제공
TLS
전송 계층 보안 (전송 계층 보안 프로 토 콜)
두 응용 프로그램 간 에 기밀 성과 데이터 완전 성 을 제공 하 는 데 사용 된다.
시작 및 닫 기
nginx 설치 디 렉 터 리 에 들 어 가 는
sbin
폴 더실행
nginx
, 두 개의 nginx 프로 세 스 를 시작 합 니 다. 각각:master 프로 세 스: 데 몬
work 프로 세 스: 요청 에 응답 하 는 데 사 용 됩 니 다.
실행
nginx -s stop
프로 세 스 닫 기실행
nginx -s reload
프로 세 스 재 부팅시작: 시스템 이 자동 으로 실행 되 는 스 크 립 트 파일 을 편집 합 니 다. centos 에 서 는 / etc / rc. d / rc. local 입 니 다. nginx 시작 명령 을 추가 하면 됩 니 다.
배치 하 다.
nginx. conf 파일 편집
# ,
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
# event ,
events {
worker_connections 1024;
}
# http http
http {
#
include mime.types;
#
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
# ,sendfile nginx sendfile , on, IO , off, I/O , 。 : off。
sendfile on;
#
#tcp_nopush on;
# ,
#keepalive_timeout 0;
keepalive_timeout 65;
# gzip
#gzip on;
# , server_name , server
server {
#
listen 8080;
# ,
server_name localhost;
#
charset utf-8;
#
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
allow 192.168.10.100;
allow 172.29.73.0/24;
deny all;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias;
# location / {
# root html;
# index index.html index.htm;
# }
#}
# HTTPS server
#
#server {
# listen 443 ssl;
# server_name localhost;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
include servers/*;
}
위치 표현 식
syntax:
location [=|~|~*|^~|@] /uri/ {…}
두 가지 일치 모드 로 나 뉜 다.
~
또는 ~*
로 시작 하여 정규 일치 ~*
는 대소 문 자 를 구분 하지 않 음 여러 location 시 일치 하 는 규칙: 일반 후 정규, URI 부분 만 식별 합 니 다.예 를 들 어 요청 은
/test/1/abc.do?arg=xxx
:location = /test/1/abc.do {...}
location /test/ {...}
location /test/1 {...}
이 있 으 면 다음 항목 location =/ {…}
와 location / {...}
의 차이:이전 것 은 정확 한 일치 입 니 다.
/
요청 에 만 응답 합 니 다. 모든 /xxx
클래스 요청 은 접두사 로 일치 하지 않 습 니 다.그 다음 에는 정반 대로 모든 요청 이
/
로 시작 되 기 때문에 다른 일치 하 는 결과 가 없 을 때 반드시 실 행 됩 니 다.location ^~ / {...}
^~
는 비정규, 이 모드 와 일치 하면 정규 검색 을 계속 하지 않 겠 다 는 뜻 입 니 다.일반 매 칭 규칙 에서 다른 일반 매 칭 결 과 를 얻 지 못 했 을 때, 최종 적 으로 여기에 매 칭 되 기 때문에, 정규 가 허용 되 지 않 기 때문에, 매 칭 은 여기까지 입 니 다./test/abc.jsp
deny all;
요청 을 거절 하고 403 으로 돌아 가기allow 192.168.10.0/24;
지정 한 IP 세그먼트 proxy_pass http://192.168.1.61:8080;
를 통 해 일치 하 는 요청 대 리 를 다른 주소 로 처리 할 수 있 습 니 다.@ 변수 정의 와 유사 합 니 다. 예 를 들 어:
error_page 403 @page403;
locaion @page403 {
proxy_pass http://www.xxx.com
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.