错误描述:1、在Linux(CentOS 7 64)系统上完成Nginx(1.18.0)的安装后,找不到sbin启动目录.

2、用nginx -v 查看版本提示命令未找到

问题1:没有生成sbin目录试过以下几个失败的解决方法: 方法一、下载1.19版本,重新安装,我试了安装1.19,还是没有sbin目录

方法二、网上找的一个办法: 找到报错的文件,在解压的nginx文件下src/os/unix/ngx_user.c ,使用vi 命令编辑它,并注释报错的地方,保存退出;然后进入解压目录的objs 文件夹下下,编辑Makefile 文件,将-Werror 删除


但是我在ngx_user.c 下没有找到报错信息,然后去Makefile 文件下删除了-Werror 重新编译,同样没有生成sbin目录 问题2:nginx -v 查看版本号失败解决方法:配置Nginx环境变量 执行vi /etc/profile 命令,shift + G 跳到最后,按I 进入编辑模式将如下代码添加到最后 export NGINX_HOME=/usr/local/nginxexport PATH=$PATH:$NGINX_HOME/sbin 
执行source /etc/profile 命令重新加载配置文件,就能查看版本号了

虽然没有sbin,但是Nginx还是能启动 执行/usr/local/nginx/sbin/nginx 命令启动Nginx执行ps -ef | grep nginx 查看是否有Nginx进程
花了大半天的时间终于搞清楚问题出在哪里了虽然Nginx的压缩包和解压后的文件夹都是放在个人用户下的,但是通过su root 切换到root用户,并执行Nginx安装操作,最终生成的Nginx文件夹应该在root根目录,而不是在个人用户下

所以,应该cd / 到root 根目录,查看usr/local/nginx 文件夹下的sbin目录,这个路径是不是很熟悉?没错,就是环境变量里面配置的那个路径!

总结:对于不太熟悉Linux虚拟机的小伙伴而言,一定要区分root用户和个人用户,希望踩过这个坑以后就不会再犯同样的错误了。 //root根目录/usr/local/nginx//个人用户目录/home/wanjk/usr/local/nginx/ 下载地址: Nginx同一个域名配置多个项目的实现方法 云原生技术kubernetes(K8S)简介 |