Nginx安装、不能启动的解决办法(无sbin目录,无error.log及access.log文件)、简单文件服务器的配置
基于Nginx搭建的http服务器应用已愈发广泛,本文介绍的Nginx的相关内容都是在Linux环境下搭建完成的。
一、Nginx的安装
两种方法,二选一即可,有运行不成功的,就在命令前加sudo
[安装方法一]
##添加源
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
##安装Nginx
sudo yum install -y nginx
12345
[安装方法二]
##Nginx官网下载地址,可以选择安装的版本
http://nginx.org/download/
##安装依赖环境
yum install gcc-c++ #nginx编译需要依赖gcc环境
yum install -y pcre pcre-devel #nginx的http模块使用pcre来解析正则表达式
yum install -y zlib zlib-devel #nginx使用zlib对http包的内容进行gzip
yum install -y openssl openssl-devel #nginx支持的https协议需要ssl加密
##下载nginx源码包,并解压
wegt thhp://nginx.org/download/nginx-1.18.0.tar.gz
tar -zxvf nginx-1.18.0 nginx
#(本人选了nginx-1.18.0)
12345678910111213
二、Nginx的启动
Nginx默认的安装路径为:/usr/local/nginx
[启动方法一]
##需要设置环境变量的方法,但是本人没设置明白……所以不展开讲了
sudo Systemctl start nginx.service
12
[启动方法二]
##需要在nginx安装目录/usr/local/nginx/sbin下进行的方法
cd /usr/local/nginx/sbin
sudo ./nginx
123
三、启动过程中遇到的一系列问题及解决办法
- Nginx安装完成后没有生成sbin目录
cd /usr/local/nginx/
sudo ./configure
##执行完以上两行代码之后即可看到sbin已经有了:/usr/local/nginx/sbin/
sudo make
sudo make install
##运行sudo make install时可能会出现 make: *** [install] Error 2,但是没关系不用管
123456
此处参考了链接:https://blog.csdn.net/MyxZxd/article/details/111560462
- 进入/usr/local/nginx/sbin文件夹下后,运行:sudo ./nginx启动nginx时提示没有error.log和access.log文件:
nginx: [alert] could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (2: No such file or directory)
[emerg] 21162\#0: open() "/usr/local/nginx/logs/access.log" failed (2: No such file or directory)
12
按照错误提示,在/usr/local/nginx路径下创建logs文件夹即可。
cd /usr/local/nginx
sudo mkdir logs
#---然后---
cd /usr/local/nginx/sbin
sudo ./nginx
12345
- ngnix启动完成后拉取网页
curl -v [虚拟机(服务器)的ip地址]
#---或者---
直接打开网页,在地址栏中搜索虚拟机(服务器)的ip地址
123
如下图所示,一个最简单的nginx服务器就搭建完成啦~
四、Linux系统下基于Nginx的简单文件服务器配置方法
Nginx服务器启动后,仅需要更改相应配置文件,即可搭建成一个文件服务器。
首先创建一个文件夹,作为网页的源址,并写入一个.txt文件:
sudo mkdir /datadir
sudo vim /datadir/test.txt #向文件中随便写点什么,vim命令的使用方法另行查找
cat /datadir/test.txt #查看内容是否写入成功
123
然后修改配置文件:
配置文件位置:/usr/local/nginx/conf/nginx.conf
sudo vim /usr/local/nginx/conf/nginx.conf
1
找到如图所示位置,并加以修改:
修改为:
最后重启Nginx使配置生效
cd /usr/local/nginx/sbin
sudo ./nginx -s reload
##注意:该步骤有时候仅用sudo还不管用,需要进入root权限下执行才能生效
##进入root权限:sudo su root
##退出root权限:exit + Enter
12345
完成以上步骤后再次打开网页,在地址栏中搜索虚拟机(服务器)的ip地址,就可以看到文件文件服务器啦~ ~ ~ 如果还是没有,就等会再刷新一下,可能就有了。