이 글에서는 Nginx를 빠르게 구축하기 위한 구성과 기본 매개변수를 주로 소개합니다. 이제 필요한 친구들은
Nginx는 신뢰할 수 있는 고성능 HTTP입니다. 미들웨어, 대행 서비스.
httpd - Apache
IIS - Microsoft
GWE - Google
tomcat - Sun
#🎜 🎜# select
select 이 함수에서 모니터링하는 파일 설명자는 writefds, readfds 및 Exceptfds의 세 가지 범주로 나뉩니다. 호출 후 select 함수는 설명자가 준비될 때까지(데이터 읽기, 쓰기 가능 또는 제외) 시간 초과될 때까지 차단됩니다(timeout은 대기 시간을 지정하며 즉시 반환되는 경우 null로 설정할 수 있음). 함수가 반환됩니다. select 함수가 반환되면 fdset를 탐색하여 준비된 설명자를 찾을 수 있습니다.
select단점:
1 모니터링할 수 있는 파일 설명자 수에는 최대 제한이 있습니다. 2. 선형 스캔은 비효율적입니다.
epoll
epoll은 수평 트리거링과 에지 트리거링을 지원합니다. 특징은 에지 트리거링으로, 어떤 fd가 방금 준비되었는지 프로세스에 알리고 한 번만 알림을 받습니다. 또 다른 기능은 epoll이 "이벤트" 준비 알림 방법을 사용하여 epoll_ctl을 통해 fd를 등록한다는 것입니다. fd가 준비되면 커널은 콜백과 유사한 콜백 메커니즘을 사용하여 fd를 활성화하고 epoll_wait는 알림을 받을 수 있습니다.
epoll의 장점:
1 최대 동시 연결 수에는 제한이 없으며 열 수 있는 FD의 상한도 훨씬 더 큽니다. 1024 이상(1G 메모리로 약 100,000개의 포트를 모니터링할 수 있음) 2. 효율성이 향상되었습니다. 폴링 방식이 아니며, FD 수가 증가해도 효율성이 떨어지지 않습니다. 3. 메모리 복사, mmap() 파일 매핑 메모리를 사용하여 커널 공간을 통한 메시지 전달 속도를 높입니다. 즉, epoll은 복사 오버헤드를 줄이기 위해 mmap을 사용합니다.
2. 경량 #
/etc/yum.repos.d/nginx.repo 생성
파일을 작성하고 다음 내용을 입력하세요.[nginx] name=nginx repo baseurl=http://nginx.org/packages/mainline/OS/OSRELEASE/$basearch/ gpgcheck=0 enabled=1
OS
선택 값은centos
및rhel
입니다.OSRELEASE
는 시스템 버전입니다. 예를 들어6
및7
은 각각 버전 6.x와 7.x를 나타냅니다.
/etc/yum.repos.d/nginx.repo
文件,并输入如下内容[root~]# nginx -v nginx version: nginx/1.14.0
OS
可选值有centos
和rhel
。OSRELEASE
为系统版本,例如6
和7
分别代表 6.x 和 7.x 的版本。
yum install -y nginx
安装nginxnginx -v
查看nginx版本nginx -V
[root~]# nginx -V nginx version: nginx/1.14.0 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) built with OpenSSL 1.0.2k-fips 26 Jan 2017 TLS SNI support enabled configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'
rpm -ql nginx
编译选项 | 作用 |
---|---|
--prefix=/etc/nginx |
配置文件目录 |
--sbin-path=/usr/sbin/nginx |
可执行文件名称和所在目录 |
--modules-path=/usr/lib64/nginx/modules |
nginx动态模块的安装目录 |
--conf-path=/etc/nginx/nginx.conf |
主配置文件名称和所在目录 |
--error-log-path=/var/log/nginx/error.log |
全局错误日志文件名称和所在目录 |
--http-log-path=/var/log/nginx/access.log |
HTTP服务器的主请求日志文件的名称和所在目录 |
--pid-path=/var/run/nginx.pid |
nginx.pid所在目录,这是储存主进程的进程ID文件 |
--lock-path=/var/run/nginx.lock |
nginx.lock所在目录 |
--http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp |
执行对应模块时nginx所保留的临时文件 |
--user=nginx --group=nginx
|
设定Nginx进程启动的用户和用户组 |
--with-http_random_index_module |
目录中随机选择一个随机主页 |
--with-http_stub_status_module |
Nginx客户端状态 |
--with-http_sub_module |
HTTP内容替换 |
--with-cc-opt=<parameters> |
设置额外的参数将被添加到CFLAGS变量 |
--with-ld-opt=<parameters> |
设置附加参数,链接系统库 |
[root~]# rpm -ql nginx /etc/logrotate.d/nginx /etc/nginx /etc/nginx/nginx.conf /etc/nginx/conf.d /etc/nginx/conf.d/default.conf /etc/nginx/fastcgi_params /etc/nginx/scgi_params /etc/nginx/uwsgi_params /etc/nginx/koi-utf /etc/nginx/koi-win /etc/nginx/win-utf /etc/nginx/mime.types /etc/sysconfig/nginx /etc/sysconfig/nginx-debug /usr/lib/systemd/system/nginx-debug.service /usr/lib/systemd/system/nginx.service /usr/lib64/nginx /usr/lib64/nginx/modules /etc/nginx/modules /usr/sbin/nginx /usr/sbin/nginx-debug /usr/share/doc/nginx-1.14.0 /usr/share/doc/nginx-1.14.0/COPYRIGHT /usr/share/man/man8/nginx.8.gz /usr/share/nginx /usr/share/nginx/html /usr/share/nginx/html/50x.html /usr/share/nginx/html/index.html /var/cache/nginx /var/log/nginx /usr/libexec/initscripts/legacy-actions/nginx /usr/libexec/initscripts/legacy-actions/nginx/check-reload /usr/libexec/initscripts/legacy-actions/nginx/upgrade
默认路径 | 类型 | 作用 |
---|---|---|
/etc/logrotate.d/nginx |
配置文件 | Nginx日志轮转,用于logrotate服务的日志切割 |
/etc/nginx /etc/nginx/nginx.conf /etc/nginx/conf.d /etc/nginx/conf.d/default.conf
|
目录、配置文件 | nginx主配置文件 |
/etc/nginx/fastcgi_params /etc/nginx/uwsig_params /etc/nginx/scgi_params
|
配置文件 | cgi配置相关,fastcgi配置 |
/etc/nginx/koi-utf /etc/nginx/koi-win /etc/nginx/win-utf
|
配置文件 | 编码转换映射转化文件 |
/etc/nginx/mime.types |
配置文件 | 设置http协议的Content-Type与扩展名对应关系 |
/usr/lib/systemd/system/nginx-debug.service /usr/lib/systemd/system/nginx.service /etc/sysconfig/nginx /etc/sysconfig/nginx-debug
|
配置文件 | 用于配置出系统守护进程管理器管理方式 |
/usr/lib64/nginx/modules /etc/nginx/mudules
|
目录 | Nginx模块目录 |
/usr/sbin/nginx /usr/sbin/nginx-debug
|
命令 | Nginx服务的启动管理的终端命令 |
/usr/share/doc/nginx-1.14.0 /usr/share/doc/nginx-1.14.0/COPYRIGHT /usr/share/man/man8/nginx.8.gz
|
文件、目录 | Nginx手册和帮助文件 |
/var/cache/nginx |
目录 | Nginx缓存目录 |
/var/log/nginx | nginx를 설치하려면 nginx 버전을 보려면 | 2. 컴파일 매개변수 상세 설명 |
컴파일 옵션 | 함수 | 🎜|||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
기본 경로 | 유형 | 함수 | th>🎜|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Command | 설명 |
---|---|
지정된 구성 파일로 nginx 시작 | # 🎜🎜#以指定的配置文件启动nginx |
nginx -s quit |
正常停止nginx,Nginx在退出前完成已经接受的连接请求。 |
nginx -s stop |
快速停止nginx,不管有没有正在处理的请求。 |
nginx -s reload [-c <配置文件>] |
重载配置文件 |
nginx -s reopen |
重新打开日志文件 |
nginx -v |
查看版本 |
nginx -V |
查看安装时的编译参数 |
nginx -t [-c <配置文件>] |
检查配置文件语法是否正确 |
nginx -s reload
nginx -s quit
구성 파일 구문이 올바른지 확인
nginx -s stop
처리 중인 요청이 있는지 여부에 관계없이 nginx를 빠르게 중지합니다.
nginx -s reload [-c <구성 파일>]
구성 파일 다시 로드
- #🎜 🎜#
nginx -s 다시 열기
로그 파일 다시 열기
nginx -v
- 버전 보기
nginx -V
td>- 설치 중 컴파일 매개변수 보기
nginx -t [-c <구성 파일>]
nginx -s reload
수정 사항을 로드하는 명령 구성 파일 이후 명령이 실행된 후 다음 이벤트가 발생합니다.
Nginx의 마스터 프로세스는 구성 파일의 정확성을 확인합니다. 오류 메시지가 나타나면 nginx는 원래 구성 파일을 계속 사용하여 작동합니다(작업자는 영향을 받지 않기 때문에)
위 내용은 Nginx를 빠르게 설정하고 기본 매개변수를 구성하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!