중요한 웹 서버 작업은 파일(예: 이미지 또는 정적 HTML 페이지)을 제공하는 것입니다.
요청 시 파일은 /data/www(HTML 파일 포함 가능) 및 /data/images(이미지 포함) 등 다양한 로컬 디렉터리에서 제공됩니다. 이를 위해서는 구성 파일을 편집하고 두 개의 위치 블록을 사용하여 http 블록 내에 서버 블록을 설정해야 합니다. (추천 학습: nginx 사용법)
먼저 /data/www 디렉토리를 생성하고 텍스트 내용이 포함된 index.html 파일을 넣은 다음 /data/images 디렉토리를 생성하고 그 안에 이미지를 넣습니다. 두 개의 디렉토리 생성-
[root@localhost ~]# mkdir -p /data/www [root@localhost ~]# mkdir -p /data/images [root@localhost ~]#
위에서 생성한 두 개의 디렉토리에 두 개의 파일을 넣습니다: /data/www/index.html 및 /data/images/logo.png, /data/www/index.html 파일 내용은 다음과 같습니다. 다음과 같이 한 줄만 입력하세요. -
<h2> New Static WebSite Demo.</h2>
다음으로 구성 파일(/usr/local/nginx/conf/nginx.conf)을 엽니다. 기본 구성 파일에는 이미 서버 블록의 여러 예가 포함되어 있으며 대부분은 주석 처리되어 있습니다. 이제 해당 블록을 모두 주석 처리하고 새 서버 블록을 시작합니다.
http { server { } }
일반적으로 구성 파일에는 서버가 수신 대기하는 포트와 서버 이름으로 구별되는 여러 서버 블록이 포함될 수 있습니다. nginx는 요청을 처리할 서버를 결정할 때 서버 블록 내에 정의된 위치 지시문의 매개변수에 대해 요청 헤더에 지정된 URI를 테스트합니다.
다음 위치 블록을 서버 블록에 추가합니다.http {
server {
location / {
root /data/www;
}
}
}
http {
server {
location / {
root /data/www;
}
location /images/ {
root /data;
}
}
}
서버 블록의 최종 구성은 다음과 같아야 합니다.
server { location / { root /data/www; } location /images/ { root /data; } }
이는 이미 표준 포트 80에서 수신 대기하고 로컬 컴퓨터에서 액세스할 수 있는 서버( http://localhost/ )에 대한 작업 구성입니다. /images/로 시작하는 URI에 대한 요청에 대한 응답으로 서버는 /data/images 디렉터리에서 파일을 보냅니다. 예를 들어, http://localhost/images/logo.png 요청에 대한 응답으로 nginx는 서비스에 /data/images/logo.png 파일을 보냅니다. 파일이 존재하지 않으면 nginx는 404 오류를 나타내는 응답을 보냅니다. /images/로 시작하지 않는 URI에 대한 요청은 /data/www 디렉터리에 매핑됩니다. 예를 들어, http://localhost/about/example.html에 대한 요청에 대한 응답으로 nginx는 /data/www/about/example.html 파일을 보냅니다.
새 구성을 적용하려면 아직 시작하지 않은 경우 nginx를 시작하거나 다음 명령을 실행하여 nginx의 기본 프로세스에 다시 로드 신호를 보내세요.[root@localhost ~]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost ~]# /usr/local/nginx/sbin/nginx -s reload
브라우저를 열거나 CURL을 사용하여 아래와 같이 Nginx 서버에 액세스합니다. -
전체 nginx.conf 파일 구성 내용은 다음과 같습니다.위 내용은 nginx를 사용하여 정적 콘텐츠 제공의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
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 on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
## 新服务(静态网站)
server {
location / {
root /data/www;
}
location /images/ {
root /data;
}
}
}