Nginx安装完成没有生成sbin目录的解决方法
错误描述:
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/nginx export 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安装完成没有生成sbin目录的解决方法的文章就介绍到这了,更多相关Nginx没有生成sbin目录内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
nginx目录路径重定向的方法
如果希望域名后边跟随的路径指向本地磁盘的其他目录,而不是默认的web目录时,需要设置nginx目录访问重定向. 应用场景:dashidan.com/image自动跳转到dashidan.com/folderName/image.nginx目录路径重定向的四种实现方式.修改root映射,通过Nginx rewrite内部跳转,设置别名alias映射实现,通过nginx的permanent 301绝对跳转实现. 1 nginx修改root映射 修改root映射实现nginx目录访问重定向是最简单的方
-
nginx安装到指定目录的方法示例
公司需求,需要在同一台机器上装两个不同位置的 nginx.what!我之前都是直接装在 /user/local/ 下的啊, 或者 yum install nginx 装在 /etc/nginx 啊,这怎么办 经过我的一番寻找终于看到的一些靠谱的答案. ./configure \ --prefix=你想要安装的目录 \ --sbin-path=/你想要安装的目录/nginx \ --conf-path=/你想要安装的目录/nginx.conf \ --pid-path=/你想要安装的目录/ngin
-
Nginx 禁止访问某个目录或文件的设置方法
复制代码 代码如下: location = /config/ { return 404; } location =/config.ini{ return 404; } 这样只能禁止访问 http://www.jb51.net/path/ 复制代码 代码如下: location = /path/ { return 404; } 禁止访问 http://www.jb51.net/path/test.php 复制代码 代码如下: location ^~ /test { deny all; } 可能te
-
nginx设置目录白名单、ip白名单的实现方法
1.设置目录白名单:对指定请求路径不设置限制,如对请求路径为api目录下的请求不做限制,则可写为 server{ location /app { proxy_pass http://192.168.1.111:8095/app; limit_conn conn 20; limit_rate 500k; limit_req zone=foo burst=5 nodelay; } location /app/api { proxy_pass http://192.168.1.111:8095/app
-
nginx设置上传目录无执行权限的方法
nginx上也很简单,我们使用location..如下: 复制代码 代码如下: location ~ ^/upload/.*\.(php|php5)$ { deny all; } 其中upload换为你要设置的目录名字 这条规则的含义是匹配请求连接中开头是/upload/,中间匹配任意字符,结尾匹配.php或者.php5的页面,最后利用deny all禁止访问,这样就防止了上传目录的脚本执行权限
-
启用Nginx目录浏览功能的方法
今天工作需要,要给客户提供一个patch的下载地址,于是想用nginx的目录浏览功能来做,需要让客户看到指定一个目录下的文件列表,然后让他自己来选择该下载那个文件: 我们都知道在apache下可以配置访问web服务器的某个路径时,自动显示其目录下面的文件列表的,其实Nginx一点也不比apache弱,它当然也可以实现这个功能,而且还非常容易和简单:主要用到autoindex 这个参数来开启,其配置如下: 复制代码 代码如下: location / { root /data/w
-
ngin配置301重定向设置方法和nginx子目录301重定向
nginx版本为1.1.19. 若域名由a.com转移到了b.com,并对两个域名有所有权,可以: 复制代码 代码如下: server{ server_name a.com; return 301 $scheme://b.com$request_uri;} 重启服务器,然后看一下成功与否: 复制代码 代码如下: curl -I a.com nginx子目录301重定向设置方法 如我想把www.b.com/bfiles/download/转向到dx1.b.com:81/bfiles/down
-
在Nginx浏览器中打开目录浏览功能
在nginx中不像apache默认是打开目录浏览功能的,在nignx中目录浏览功能默认是关闭了,下面我来介绍在nginx中实现目录浏览功能的配置方法. 打开nginx.conf文件,在location server 或 http段中加入 autoindex on; 另外两个参数最好也加上去: autoindex_exact_size off; 默认为on,显示出文件的确切大小,单位是bytes. 改为off后,显示出文件的大概大小,单位是kB或者MB或者GB autoindex_localtim
-
Nginx安装完成没有生成sbin目录的解决方法
错误描述: 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文
-
基于Python安装pyecharts所遇的问题及解决方法
最近学习到数据可视化内容,老师推荐安装pyecharts,于是pip install 了一下,结果...掉坑了,下面是我的跳坑经验,如果你有类似问题,希望对你有所帮助. 第一个坑: 这个不难理解,缺少pyecharts-jupyter-installer嘛,那就安一个呗.可能有人注意到,我使用的是python2 -m pip ...(这种写法是为了解决python 2和3共存时pip的冲突问题,具体解释在本页最后.) 本以为结束了,却掉进了第二个坑: 看到这个,很明显是安装MarkupSafe时
-
nginx 隐藏版本号与WEB服务器信息的解决方法
nginx不仅可以隐藏版本信息,还支持自定义web服务器信息 先看看最终的隐藏结果吧 具体怎么实现呢,其实也很简单,请往下看 1 官网下载最新稳定版 wget http://nginx.org/download/nginx-1.14.1.tar.gz 2 解压 tar -xf nginx-1.14.1.tar.gzcd nginx-1.14.1 3 修改C文件 (1)vim src/http/ngx_http_header_filter_module.c #修改49行 static u_char
-
Mysql非安装版使用步骤及忘记密码解决方法
第一步 将压缩包解压到相应的磁盘下. 第二步 打开cmd进入解压后的文件夹的bin目录下,运行mysqld -install. 第三步 开启服务:cmd进入解压的文件夹下,执行net start mysql. 第四步 安装图像界面navicat. 忘记密码的解决方法: 1. 管理员登陆系统,停止MySQL服务或者结束mysqld 进程 2. 进入命令行,来到mysql的安装目录.假设安装目录为 d:\mysql\ , CMD进入 命令行 3. 运行 d:\MYSQL\bin\mysqld --s
-
windows server2014 安装 Mysql Applying Security出错的完美解决方法
原因就是安装一遍之后没有卸载干净. 解决这个问题需要注意以下几点: 1.手动清除以下文件确保卸载干净 1)mysql的安装目录,一般为C:/Program Files目录下. 2)mysql的数据存放目录,一般在C:/Documents and Settings/All Users/Application Data目录下(需要注意的时Application Data这个文件夹默认是隐藏的,要通过 工具->文件夹选项->查看->显示所有文件与文件夹 来设置隐藏文件可见). 3)除注册表数据
-
ubuntu16.04下安装openssh-server报依赖错误的完美解决方法(非常不错)
问题:系统重装后,安装和配置SSH,防火墙配置 #安装install openssh-server sudo apt install openssh-server -y 遇到问题: sudo apt install openssh-server -y 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 有一些软件包无法被安装.如果您用的是 unstable 发行版,这也许是 因为系统无法达到您要求的状态造成的.该版本中可能会有一些您需要的软件 包尚未被创建或
-
MacOS中 VSCode 安装 GO 插件失败问题的快速解决方法
问题重现 Installing golang.org/x/tools/cmd/guru FAILED Installing golang.org/x/tools/cmd/gorename FAILED Installing golang.org/x/lint/golint FAILED Installing github.com/stamblerre/gocode FAILED 4 tools failed to install. VS COde 打开 .go 文件会自动安装插件,但是出现了一些
-
php生成唯一uid的解决方法详解
目录 一.生成唯一uuid 二.生成唯一uid 三.生成唯一uid的正确方法 补充 一.生成唯一uuid 看到某些人会用uuid去代替用户的uid 从代码中可以看出,通过unique生成一个以毫秒级时间戳为前缀的字符后md5加密 再通过分隔符进行分割后得到uuid 这种方式虽然极大程度的避免了uid的重复 但是生成的uid太长,足足36个字符,而且是混杂英文和数字符号的,可读性很差 而一般的uid中都是纯数值组成的 <?php function generateUUid($strtoupper
-
nginx如何指向本地路径及500错误解决方法
正文 一个vite+vue3项目,想要部署到服务器上.项目build后的文件都在dist目录下,将这个目录拷贝到服务器上,然后在nginx里进行配置,如下: server { listen 3571; server_name localhost; location / { root /root/xxxx/dist/; try_files $uri $uri/ /index.html; } } 这样就可以通过服务器的公网ip+端口3571来访问这个vue项目了,如果想通过域名访问,则可以这样配置:
-
linux普通用户su root切换提示没有文件或目录的解决方法
1. 首先进入单用户模式: 1). ubuntu : 上述情况可以在grub界面选择第二项修复,但没有grub可以参考: 1.重启ubuntu,随即长按shirft进入grub菜单: 2.选择recovery mode,按"e"键进入编辑页面:如下: 非恢复模式为: 3.将ro recovery nomodeset替换为"rw single init=/bin/bash" (上述的界面中将改为rw single init=/bin/bash) 4.按ctrl+x
随机推荐
- JavaScript自学笔记(必看篇)
- 如何动态添加Form项?
- android手机获取gps和基站的经纬度地址实现代码
- java字符串的合并
- .NET Core Windows环境安装配置教程
- Ajax.net 显示错误信息的设置
- OpenXml读写Excel实例代码
- Android开发之滑动图片轮播标题焦点
- python入门教程之识别验证码
- 文本框输入时 实现自动提示(像百度、google一样)
- 在无组件的情况下,如何上传图片?
- Ajax学习全套(最全最经典)
- 查询SQLServer启动时间的三种方法
- 详解MongoDB中创建集合与删除集合的操作方法
- jquery实现简单实用的弹出层效果代码
- Java多线程中常见的几个问题
- c#的datatable转list示例
- 10个微妙的Java编码最佳实践
- python 利用for循环 保存多个图像或者文件的实例
- java request.getHeader("user-agent")获取浏览器信息的方法