Centos8下安装nginx

Centos8下安装nginx

在最近的实训实验中需要在centos8下安装nginx,在安装过程中遇到了很多问题,在此对我的安装过程做一个分享;

准备工作

Vmware(安装了centos8),虚拟机可以上网

开始安装

安装依赖包,使用yum工具安装

yum -y install gcc make zlib-devel pcre pcre-devel openssl-devel

首先我们需要添加一个名位“www”的用户(名称自定义,在此篇文章内我使用的时www)

useradd www

然后对www设置密码

passwd www

然后我们需要给予www用户sudo的权限,用户的sudo权限的文件保存在/etc/sudoers里面,使用vim或者vi打开这个文件;
注意:这里需要root用户或具有root权限的用户才能操作这个文件,因此在操作这个文件的时候需要保证自己是root用户,可以使用whoami命令查看自己的身份,如果自己不是root用户需要使用su命令切换到root用户;

vim /etc/sudoers

打开这个文件之后样子
在这里插入图片描述
大概在这个位置给www用户权限;添加这句:www ALL=(ALL) ALL;强制保存并退出:wq!
然后切换到www用户的家目录

cd /home/www

准备工作做完了,现在开始下载nginx源包,使用wget工具下载

wget http://nginx.org/download/nginx-1.6.3.tar.gz

如果执行这一步的时候出现了,命令不存在之类的错误信息,可能是因为wget工具未安装,需要使用yum工具安装一下wget工具

yum -y install wget

安装成功后在执行下载命令;
此时www的家目录中会有一个名为nginx-1.6.3.tar.gz的压缩文件
切换到www用户并解压这个文件

su - www
tar -xvf nginx-1.6.3.tar.gz

解压之后会有一个名为nginx-1.6.3的目录文件;
我们更改一下nginx-1.6.3及其子文件的属主和属组

chown -R www:www nginx-1.6.3

更改成功之后进入这个文件

cd nginx-1.6.3

执行配置命令

./configure

接下来编译文件,编译成功后,可以看到一个Makefile文件

make

一般在这里会出现问题,下面给出问题截图和解决方法
1、
在这里插入图片描述
问题原因:不知道
解决方法:进入到nginx-1.6.3目录下(解压的目录)
找到当前目录下找到objs文件夹,并进入,打开文件Makefile,

vim objs/Makefile

找到有一下内容的这行:(就在前几行)

CFLAGS =  -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g 

-Werror: gcc将所有的警告当成错误进行处理把这行内容中的 “-Werror”去掉
2、在这里插入图片描述
错误原因:不知道
解决方法:编辑这个文件

vim /home/www/nginx-1.6.3/src/os/unix/ngx_user.c

把这一行注释掉(35行左右)
在这里插入图片描述
重新执行编译命令,一般不会出问题了

make

执行编译安装

执行编译安装,即也就是将编译的文件,拷贝到指定的目录。(把/nginx-1.4.4目录下的文件拷贝到/usr/local/nginx/)。

因为需要在其它文件夹下创建文件夹,所以直接编写安装会报错,所以需要采用sudo方式安装。

sudo make install

启动nginx服务器,启动命令需要使用sudo完成。

sudo /usr/local/nginx/sbin/nginx

测试nginx服务器是否可用
访问服务器地址的80端口,确定是否能打开"welcome"页面。发现此时无法访问到欢迎界面(本机除外),原因是centos本地防火墙对外未打开80端口,需要在本地防火墙中将该端口打开。使用以下命令。

sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload

此时再访问centos的80端口,就可查看到欢迎界面了。
最后给一张成功的截图
在这里插入图片描述

发布了2 篇原创文章 · 获赞 1 · 访问量 537

猜你喜欢

转载自blog.csdn.net/pipichao/article/details/105542286