目录
5.执行编译安装操作,使用 make install 命令将二进制文件安装到主机
6.到此我们就把nginx安装到/usr/local目录下了,可以使用ll命令看看有没有东西
VMware Workstation Pro上安装的全新无添加的Centos-7 x86
wget命令是一个在Linux和类Unix操作系统中经常使用的网络命令,用于从指定的URL下载文件。
命令:yum -y install wget
下载包nginx-1.18.0.tar.gz
wget https://nginx.org/download/nginx-1.18.0.tar.gz
tar -xzvf nginx-1.18.0.tar.gz
(1).找到你解压的目录
find -name configure
(2) cd去到目录
cd ./nginx-1.18.0
(3).预编译
./configure --prefix=/usr/local/nginx
很不巧,出错了,看看错误
用echo 查看上一步执行结果是否为0,不为0就是执行失败(关于echo查看会有不同数字,需要了解的朋友可以自己去再查一查)
echo $?
很不巧结果是1。错误上说是./configure: error: C compiler cc is not found
原因很简单就是缺少gcc-c++包,执行以下命令就能解决
yum -y install gcc-c++
再次执行依然报错,具体如下
预编译操作需要安装pcre pcre-devel,这些都是PCRE库,否则做预编译时就会被报错:
执行以下命令解决
yum -y install gcc make zlib-devel pcre pcre-devel openssl-devel
再次进行编译操作,你就发现这回好了,echo $?一下也终于为0了
./configure --prefix=/usr/local/nginx
?-j指定四个CPU一起编译
make -j4
make install
有东西证明你成功了哈
ll /usr/local/nginx/
(1).检测nginx的配置文件是否有语法错误并且启动nginx
/usr/local/nginx/sbin/nginx -t
(2).启动nginx?
/usr/local/nginx/sbin/nginx
(3).ps查看进程并且过滤是否启动成功
ps aux|grep nginx
(4).nginx默认的端口为80,查看是否有80端口
yum -y install net-tools
netstat -ntlp|grep nginx
好了恭喜你成功了。
1.echo $? 返回结果问题
在Linux和Unix系统中,命令执行?后通过echo s?可以获取该命令的返回值。返回值是一个整数,用于表示命令执行的结果。
返回值为0表示命令成功执行。 返回值小于0表示命令执行被终止或出现了异常情况,返回值大于0表示命令执行发生了错误,并且返回值表示具体的错误代码。
常见的返回值含义如下:
0:命令成功执行,没有错误.
1:一般错误,没有具体的错误代码。
2 : 语法错误或命令执行失败。
126:命令无法执行,可能缺少执行权限
127 : 命令不存在或无法找到。
128:无效的退出参数
130:命令被中断,通常由用户按下Ctrl+C导致
255:命令执行失败,通常由于出现无效的返回值
ps:笔者在本次实验的时候第一次echo $?时返回的是 127:命令不存在或无法找到。原因竟然是我没有cd到正确的目录,这里小伙伴们们需要注意,不要犯这样简单的错误。