ngnix入门配置
文件1.首先到ngnix下载页面下载你操作系统对应的ngnix压缩包 http://nginx.org/en/download.html
博主我是window10操作系统
上面是我解压之后放的路径。
2.下载之后呢,需要配置一下你的nginx的文件了,找到conf目录下的nginx.conf文件打开编辑
因为本文只是入门,最终目标是能在本地浏览器以服务器打开方式查看我们的静态文件。(localhost:90/index.html,而不是file://C:path/index.html)
配置文件主要是二个地方需要修改一下
#user nobody;
#指定nginx进程数
worker_processes ; #全局错误日志以及pid文件
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info; #pid logs/nginx.pid; events {
#连接数上限
worker_connections ;
} #设定http服务器,利用他的反向代理功能提供负载均衡支持
http {
#设定mime类型,类型由mime.type文件定义
include mime.types;
default_type application/octet-stream;
#设定日志格式
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#使用哪种格式的日志
#access_log logs/access.log main;
#sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,对于普通应用,
sendfile on;
#tcp_nopush on; #连接超时时间
#keepalive_timeout ;
keepalive_timeout ; #开启gzip压缩
#gzip on; server {
listen 90;
server_name xc.elianweb.com; #charset koi8-r; #access_log logs/host.access.log main; location / {
root C:/elianWebSvn/elianWeb/elianWeb/webNewLTE;
index index.html;
} #error_page /.html; # redirect server error pages to the static page /50x.html
#
#error_page /50x.html;
#location = /50x.html {
# root html;
#} # proxy the PHP scripts to Apache listening on 127.0.0.1:
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#} # deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
} # another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen ;
# listen somename:;
# server_name somename alias another.alias; # location / {
# root html;
# index index.html index.htm;
# }
#} # HTTPS server
#
#server {
# listen ssl;
# server_name localhost; # ssl_certificate cert.pem;
# ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on; # location / {
# root html;
# index index.html index.htm;
# }
#} }
上面需要修改的是listen 和 location /{ root }
listen修改原因是怕和你本地的iis服务器端口冲突,所以建议你改一下
location /{ root } 修改的是你的项目所在的路径,然后浏览器查看的路径是以你这个root 的路径为基础的,比如: 我上面写的路径
C:/elianWebSvn/elianWeb/elianWeb/webNewLTE
,然后我的项目主页文件是
C:/elianWebSvn/elianWeb/elianWeb/webNewLTE/pages/index.html
那么我在浏览器就可以这样打开 localhost:90/pages/index.html
3.配置文件写完后,就是需要运行这个nginx了。
博主在运行这个nginx时,卡在一个坑上面很久很久,就是一个报错
2017/09/15 11:08:29 [error] 21684#18308: CreateFile() "C:\nginx\nginx-1.12.1/logs/nginx.pid" failed (2: The system cannot find the file specified)
这个坑主要原因就是没有没有nginx.pid这个文件,看了网上很多方案是 需要创建nginx.pid文件,也就是要指定nginx.conf这个配置文件,然后博主很傻的这样写 nginx -c conf/nginx.conf
还是直接说正解吧 : 打开你的cmd(命令行) 然后你需要以你nginx.exe所在路径的绝对路径来写 比如博主的路径在 C:\nginx\nginx-1.12.1
那么命令行就需要这样写 /nginx/nginx-1.12.1/nginx -c /nginx/nginx-1.12.1/conf/nginx.conf
然后就会创建nginx.pid文件啦!!!汗!
如果有小伙伴遇到类似这样的报错 2017/09/15 10:43:49 [emerg] 20960#4268: bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)
原因是你的端口号80与你本地其他服务器的端口号冲突啦,所以建议你们去改配置文件的listen
4.nginx.pid文件创建好,就可以写命令行
在你nginx.exe所在的目录空白处,按下shift+右键,选择 在此处打开命令行窗口(w)
打开之后 输入第一个命令 start nginx
第二步,需要把nginx的配置文件生效
nginx -s reload
ps:推出nginx命令行 nginx -s quit
5.在命令行能够顺利输入nginx后,就可以到浏览器去查看我们的静态文件了
博主的端口是90
本地首页路径是 C:/elianWebSvn/elianWeb/elianWeb/webNewLTE/pages/index.html
nginx.conf的配置中 root 是 C:/elianWebSvn/elianWeb/elianWeb/webNewLTE
所以博主我在浏览器输入的路径是 localhost:90/pages/index.html
按照我的这个顺序去配置运行,我相信你也可以入坑nginx啦~~
希望可以帮助更多前端小伙伴入坑nginx~金木·晨 2017-09-15
最新文章
- 【原】得心应手小工具开发——IE代理快速切换工具
- C#为什么不采用多继承:
- 批处理——putCMAC小版本
- django开发个人简易Blog——数据模型
- Linux 问题汇总
- 【iOS开发】多屏尺的自动适配 AutoLayout (纯代码方式)
- 构建多模块的Maven项目
- Using Redis as Django's session store and cache backend
- 将DJANGO管理界面的filter_horizontal移到前面来复用
- Java中静态代码块,代码块,构造方法的理解
- apple iphone 3gs 有锁机 刷机 越狱 解锁 全教程(报错3194,3014,1600,短信发不出去等问题可参考)
- Absolute sort
- hdu 2604Queuing dp+ 矩阵快速幂
- css3特效
- Linux最小系统移植之早期打印CONFIG_EARLY_PRINTK
- 查不到opencv版本的问题
- Disconnected from the target VM, address: '127.0.0.1:57178', transport: 'socket'
- 爬虫——scrapy框架
- MySQL: Set user variable from result of query
- 转换 transform
热门文章
- Entity Framework Code-First(9):DataAnnotations
- 8.bwapp亲测xxe漏洞
- 关于vs2012解决方案中项目DLL文件引用问题
- CSS类名命名规则
- Vue 全家桶单元测试简要指南
- foreach 加 &;
- Python 爬虫笔记
- 洛谷P2534 [AHOI2012]铁盘整理
- 解读人:李思奇,Development of a sensitive, scalable method for spatial, cell-type-resolved proteomics of the human brain. (一种用于研究人类大脑基于空间或细胞类型的蛋白质组学的灵敏方法)
- Python Day23