文章目录
Nginx功能介绍
Nginx的功能相似于Apache代理服务器
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。
其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。
Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。
关于Nginx的下载
windows 通过下载官网安装包,下载地址:http://nginx.org/en/download.html
建议下载到除了C盘的位置
Nginx的启动
修改配置文件
打开配置文件 ,目录在文件夹的conf下的nginx.conf:
修改一:添加当前登录用户为owner
修改二:在结尾大括号之前添加:
include /Users/sam/upload/upload.conf;
这里 /Users/sam/upload 是资源文件路径,/Users/sam/upload/upload.conf 是额外的配置文件,当前把 /Users/sam/upload/upload.conf 配置文件的内容加入 nginx.conf 也是可行的!
修改三:添加 /Users/sam/upload/upload.conf 文件,配置如下:
server
{
charset utf-8;
listen 8089;
server_name http_host;
root /Users/sam/upload/;
autoindex on;
add_header Cache-Control "no-cache, must-revalidate";
location / {
add_header Access-Control-Allow-Origin *;
}
}
如果需要加入 https 服务,可以再添加一个 server:
server
{
listen 443 default ssl;
server_name https_host;
root /Users/sam/upload/;
autoindex on;
add_header Cache-Control "no-cache, must-revalidate";
location / {
add_header Access-Control-Allow-Origin *;
}
ssl_certificate /Users/sam/Desktop/https/book_youbaobao_xyz.pem;
ssl_certificate_key /Users/sam/Desktop/https/book_youbaobao_xyz.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
}
其中:
https证书:/Users/sam/Desktop/https/book_youbaobao_xyz.pem
https:私钥:/Users/sam/Desktop/https/book_youbaobao_xyz.key
错误记录环节!
错误记录:
在这里进行完修改二之后,整个服务器拉不起来了,疯狂报错,我将修改三的放在了nginx.conf中
nginx: [warn] "user" is not supported, ignored in D:\Program Files\nginx-1.19.3/conf/nginx.conf:2
nginx: [emerg] invalid number of arguments in "include" directive in D:\Program Files\nginx-1.19.3/conf/nginx.conf:118
在这里,第118行就是修改二的语句
在我删除这句话之后,本地的服务器localhost是可以拉起来的,但是和上挂外部服务器就不知道了,错误先记录一下,后期追更!!!
nginx启动命令
(1)直接双击nginx.exe,双击后一个黑色的弹窗一闪而过
(2)打开cmd命令窗口,切换到nginx解压目录下,输入命令 nginx.exe 或者 start nginx ,回车即可
检查nginx是否启动成功
直接在浏览器地址栏输入网址 http://localhost:80,回车,出现以下页面说明启动成功
上面监听器写的什么端口就是localhost什么端口!!!
也可以在cmd命令窗口输入命令 tasklist /fi “imagename eq nginx.exe” ,出现如下结果说明启动成功
利用nginx访问8089端口对应目录的文件
我们修改nginx.conf的配置文件
之后在upload文件夹下放入两个文件
之后启动nginx
访问8089端口就会看见我们可以查看目录下的文件,访问成功!
Nginx启动中遇到的问题
在conf文件中某些语句缺少分号;
Q:尝试配置nginx,并且按照了教程中的所有步骤进行操作,但是当我想启动nginx时,它会吐出以下错误:
nginx:[emerg] /etc/nginx/nginx.conf中“ include”指令中的参数数目无效
:184
nginx:配置文件/etc/nginx/nginx.conf测试失败
A:您确定您没有忘记;某个地方吗?包含行中某处是否存在不可打印的字符?该文件存在吗?您没有删除吗?例如:
win10网络端口冲突
nginx的配置文件是conf目录下的nginx.conf,默认配置的nginx监听的端口为80,如果80端口被占用可以修改为未被占用的端口即可
检查80端口是否被占用的命令是:
netstat -ano | findstr 0.0.0.0:80
或者
netstat -ano | findstr "80"
如下图所示,80端口被pid为10828的进程占用!
查看任务管理器中的进程树,可以发现这里是nginx被拉起来了!
win10本地文件路径配置问题
如果将文件放入C盘的user文件夹或者system32等文件夹,就会出现没有权限访问,cmd需要在管理员下运行才可以拥有操作权限,为了避免麻烦,不建议在C下
win10上载conf配置引入
追更!