Nginx学习

时间:2021-09-01
本文章向大家介绍Nginx学习,主要包括Nginx学习使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

nginx.conf

nginx.conf 配置文件中默认有三大块: 全局快, events块, http块
http块中可以配置多个server块,每个server块又可以配置多个location块

worker_processes  1;

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    server {
		# 当发送的请求是 localhost:80就会被当前的server拦截
        listen       80;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

}

全局块

user指令

(1)user:用于配置运行Nginx服务器的worker进程的用户和用户组。

语法 user user [group]
默认值 nobody
位置 全局块

该属性也可以在编译的时候指定,语法如下./configure --user=user --group=group ,如果两个地方都进行了设置,最终生效的是配置文件中
的配置。

该指令的使用步骤:
(1)设置一个用户信息"www"

 user www;

(2) 创建一个用户

useradd www

(3)修改user属性

user www

(4)创建/root/html/index.html页面,添加如下内容

<!DOCTYPE html> 
<html>
<head> 
	<title>Welcome to nginx!</title> 
	<style> 
		body {width: 35em; margin: 0 auto; font-family: Tahoma, Verdana, Arial, sans- serif;} 
	</style> 
</head> 
<body> 
	<h1>Welcome to nginx!</h1> 
	<p>If you see this page, the nginx web server is successfully installed and working. Further configuration is required.</p>
	<p>For online documentation and support please refer to<a href="http://nginx.org/">nginx.org</a>.<br/> Commercial support is available at 
	<a href="http://nginx.com/">nginx.com</a>.</p> 
	<p><em>Thank you for using nginx.</em></p> <p><em>I am WWW</em></p> 
</body> 
</html>

(5)修改nginx.conf

location / { 
	root /root/html;
	index index.html index.htm; 
}

(5)测试启动访问

页面会报403拒绝访问的错误

(6)分析原因

因为当前用户没有访问/root/html目录的权限

(7)将文件创建到 /home/www/html/index.html ,修改配置

location / { 
	root /home/www/html; 
	index index.html index.htm; 
}

(8)再次测试启动访问

能正常访问。

综上所述,使用user指令可以指定启动运行工作进程的用户及用户组,这样对于系统的权限访问控制的更加精细,也更加安全。

work process指令

master_process:用来指定是否开启工作进程。

语法 master_process on/off;
默认值 master_process on;
位置 全局块

worker_processes:用于配置Nginx生成工作进程的数量,这个是Nginx服务器实现并发处理服务的关键所在。理论上来说workder process的值越大,可以支持的并发处理量也越多,但事实上这个值的设定是需要受到来自服务器自身的限制,建议将该值和服务器CPU的内核数保存一致。

语法 worker_processes num/auto;
默认值 1
位置 全局块

其他指令

daemon:设定Nginx是否以守护进程的方式启动。
守护式进程是linux后台执行的一种服务进程,特点是独立于控制终端,
不会随着终端关闭而停止。

语法 daemon on/off;
默认值 daemon on;
位置 全局块

error_log:用来配置Nginx的错误日志存放路径

语法 error_log file [日志级别];
默认值 error_log logs/error.log error;
位置 全局块、http、server、location

该属性可以通过./configure --error-log-path=PATH来指定
其中日志级别的值有:
debug|info|notice|warn|error|crit|alert|emerg,翻译过来为试|信 息|通知|警告|错误|临界|警报|紧急,这块建议大家设置的时候不要设
置成info以下的等级,因为会带来大量的磁盘I/O消耗,影响Nginx的性
能。

挣钱养媳妇儿^.^

原文地址:https://www.cnblogs.com/circle-coder/p/15213585.html