nginx常见错误解决

一、如何解决nginx:未找到命令问题
1、打开环境变量所在的文件:
vim /etc/profile
2、在profile文件末尾,加上如下内容
#指向nginx的安装目录sbin"
PATH=$PATH:/usr/local/nginx/sbin
3、重新加载环境
source /etc/profile
二、nginx产生【413 request entity too large】错误的原因与解决方法
通过查资料,发现是Nginx配置中限制了请求的实体大小,因此就可以通过修改Nginx的配置文件来解决这个问题。Nginx的默认配置文件是conf目录下的nginx.conf文件,如果有自行扩展的配置文件可以在nginx.conf文件中查找include关键字去定位到相应的扩展配置文件。
具体的话是有一个【client_max_body_size】属性,这个属性可以配置在http节点下(http全局),可以配置在server节点下(server全局),也可以配置在location节点下(单应用)。要注意的是,这个属性在不配置的情况下默认值是1m,也就是限制了请求实体的大小为1m。
例如

点击查看代码
</details>
http {
    # 将Nginx代理的所有请求实体的大小限制为20m
    client_max_body_size 20m;
}
server {
    # 将该服务下的所有请求实体的大小限制为20m
    client_max_body_size 20m;
}
location /yanggb {
    # 将此路由请求的实体大小限制为20m
    client_max_body_size 20m;
}
三、解决nginx open() “/usr/local/var/run/nginx/client_body_temp/0000000009的问题
是因为client_body_temp目录没有权限,关于client_body_temp目录的作用,简单说就是如果客户端POST一个比较大的文件,长度超过了nginx缓冲区的大小,需要把这个文件的部分或者全部内容暂存到client_body_temp目录下的临时文件。
解决办法1:
在nginx.conf配置文件顶部加上:user root;
解决办法2:
修改目录权限:sudo chmod -R 777 client_body_temp;
posted @ 2023-03-13 09:29  不想挨捶的牛  阅读(410)  评论(0编辑  收藏  举报