一、mac上安装nginx

brew install nginx
# 核心安装目录,启动文件在该目录的bin下面,欢迎页面在html下面。
/usr/local/Cellar/nginx/1.12.2_1

# 核心配置文件路径
/usr/local/etc/nginx/nginx.conf

# 服务器默认路径
/usr/local/var/www

访问http://localhost:8080,成功说明安装好了。

二、nginx命令行

# 开启
sudo nginx

# 查看是否正常开启
ps aux|grep nginx 

# 杀掉进程,比如PID为21391
sudo 

# 关掉
sudo nginx -s quit

# 重启
sudo nginx -s reload

三、nginx配置文件

1、网站目录权限问题(403 Forbidden)

user root owner;

2、设置网站根目录

root  /Users/crazy/Desktop/code/crazyman.github.io/dist;

3、设置server_name

做dns解析

#nginx.conf文件server_name  www.website.info;

打开finder,调出前往文件夹,输入/private/etc/,找到hosts文件,复制一份出来,修改

#hosts文件
127.0.0.1  www.website.info

再覆盖etc下的hosts文件,就可以用www.website.info访问本地服务器(nginx)。

如果生产环境模拟好了,记得把hosts文件再恢复到原来的样子,即去掉127.0.0.1  www.website.info,否则会出现一件尴尬的事,就是你线上访问www.website.info,老说「拒绝了我们的连接请求」。

另外,如果之前把dist目录没有提交到github,在.gitignore中忽略了,最后发布的时候,记得npm run build ,然后修改.gitignore文件,把产出目录dist提交上去。怪不得我纳闷儿本地的nginx跑的好好的,怎么到了真实环境就不行了呢?文件都没交上去,咋访问啊?

4、单页应用刷新后404

单页面应用在webpackdevserver都正常,部署到服务器后,一刷新,就404了。下面提供3种解决方案,仅供参考。

方案A:vue路由用hash模式,不用服务器做任何配合工作。

方案B:vue路由用history模式,nginx需要配置404页面。
error_page                /.html;

方案C:vue路由用history模式,出错总是跳到当前页面。
try_files $uri $uri/ /index.html;

nginx那些事儿的更多相关文章

  1. 小型 Web 页项目打包优化方案

    背景   目前团队中新的 Web 项目基本都采用了 Vue 或 React ,加上 RN,这些都属于比较重量级的框架,然而对于小型 Web 页面,又显得过大.早期的一些项目则使用了较原始的 HTML ...

  2. 小型web项目的模块化(转)

    背景   目前团队中新的 Web 项目基本都采用了 Vue 或 React ,加上 RN,这些都属于比较重量级的框架,然而对于小型 Web 页面,又显得过大.早期的一些项目则使用了较原始的 HTML ...

  3. apache和nginx那点事儿--阻塞和异步

    先明白的事儿:当一个程序在执行的时候,一般会创建一个进程,也可以有多个进程.一个进程至少会创建一个线程,多个线程共享一个程序进程的内存.程序的运行最终是靠线程来完成操作的.线程的数量跟CPU核数有关, ...

  4. StartCom 申请 SSL 证书及 Nginx HTTPS 支持配置全攻略

    来源:https://www.williamyao.com/index.php/archives/1397/ 前言 最近收到 StartCom 的邮件,数字证书即将过期,想到去年在 StartSSL ...

  5. 从零开始学 Java - 利用 Nginx 负载均衡实现 Web 服务器更新不影响访问

    还记得那些美妙的夜晚吗 你洗洗打算看一个小电影就睡了,这个时候突然想起来今天晚上是服务器更新的日子,你要在凌晨时分去把最新的代码更新到服务器,以保证明天大家一觉醒来打开网站,发现昨天的 Bug 都不见 ...

  6. 终于等到你---订餐系统之负载均衡(nginx+memcached+ftp上传图片+iis)

    又见毕业 对面工商大学的毕业生叕在拍毕业照了,一个个脸上都挂满了笑容,也许是满意自己四年的修行,也许是期待步入繁华的社会... 恰逢其时的连绵细雨与满天柳絮,似乎也是在映衬他们心中那些离别的忧伤,与对 ...

  7. 【T电商 1】Nginx服务器搭建

    在项目中,首先是需要Nginx服务器作为一个图片服务器来使用.那么,久涉及到服务器的搭建.这次服务器的搭建,主要是在三个环境上进行了学习:CentOS6.2,CentOS7,和Ubuntu16.那么本 ...

  8. 通过Nginx实现负载均衡

    百度了下负载均衡:英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器.FTP服务器.企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务 嗯,跟我理 ...

  9. [Nginx 2] form表单提交,图片上传

    导读:昨晚恶补了一些Nginx服务器的东西,从整体上对Nginx有一个初步的了解.上午去找师哥问了问目前项目中的使用情况,然后就开始上传图片了.这里就简单总结整理一下今天的成果,以后接着提升.简单粗暴 ...

随机推荐

  1. GIL锁

    GIL锁                                                                           在CPython中,这个全局解释器锁,也称 ...

  2. 波哥博客Url

    http://www.cnblogs.com/whatlonelytear/

  3. ajax对象方法的使用

    change.js文件的内容对象函数关键字:fnjQuery.fn.change = function () { this.css({"background": "red ...

  4. yslow V2 准则详细讲解

    主要有12条:   1. Make fewer HTTP requests 尽可能少的http请求..我们有141个请求(其中15个JS请求,3个CSS请求,47个CSS background ima ...

  5. 数据库解析IP,时间戳

    #解析IP SELECT INET_NTOA('168494269'); #解析时间戳 SELECT FROM_UNIXTIME('1505458308');

  6. 用 DocumentFormat.OpenXml 和Microsoft.Office.Interop.Word 写入或者读取word文件

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Tex ...

  7. python property的用法

    用法一: class Test(object): def __init__(self): # 私有化 self.__num = 100 #名字重整_Test__num def setNum(self, ...

  8. MVC AOP解决JsonResult返回json时间格式

    新建JsonNetResult类:JsonResult public class JsonNetResult: JsonResult { public JsonNetResult() { Settin ...

  9. Select2 多层次赋值时异步赋值的问题

    场景: 当选择人员时加载人员,选择部门时加载部门.所以在人员下,选择人员A后,如果选择部门,会触发二级select 重新获取数据. 问题: 使用select2()方法进行绑定远程数据后,对第二个sel ...

  10. 如何区分oracle服务器、oracle客户端、plsql?

    大家在安装oracle数据库的时候,是不是有很多区分不清的概念,以至于束手无策呢?现在有一个问题,就是怎么区分oracle服务器.oracle客户端.plsql三者的概念?我想,新手在安装的时候可能会 ...