最好的办法是,先新建一个普通用户,比如 test
用户
useradd test
如果已经有了一个名字为 work 的用户组,就不用创了,直接用这个组,这个组挺不错的。
没有的使用创建组命令,创建work组(工作组):
groupadd work
然后将 test 用户,转到 work 工作组内,命令如下:
usermod -G groupname username
查看已创建的用户及其所属的用户组:id 命令 后带 用户名
id test
然后赋予 test 用户一个 root 权限:
chmod 640 /etc/sudoers
vi /etc/sudoers
添加 test 用户
test ALL=(ALL) NOPASSWD:ALL
准备好了一个可以用的用户,然后在 nginx.conf 配置文件内,添加配置
user root;
以 test 项目为例:
server {
listen 80;
server_name test.com;
keepalive_timeout 120;
large_client_header_buffers 4 16k; # 读取大型客户端请求头的缓冲区的最大数量和大小
client_max_body_size 200M; #设置nginx能处理的最大请求主体大小。
client_body_buffer_size 128k; #请求主体的缓冲区大小。
charset utf-8;
access_log /home/test/access.log;
location / {
include /home/test/uwsgi_params;
uwsgi_pass unix:/home/test/test.sock;
uwsgi_send_timeout 600s; # 指定向uWSGI传送请求的超时时间,完成握手后向uWSGI传送请求的超时时间。
uwsgi_connect_timeout 600s; # 指定连接到后端uWSGI的超时时间。
uwsgi_read_timeout 600s;
}
}
uwsgi 服务器 ini 文件配置:
在ini文件内添加如下内容
uid: 用户
gid:用户组
[uwsgi]
uid=test
gid=work
socket=/home/test/test.sock
# socket权限设置
chmod-socket=664
chown-socket = %(uid):root
后面,就不会让nginx 服务器报错,无法连接到 /home/test/test.sock 的错误了。