概念

安装

apt-get install nginx # Ubuntu
yum install nginx -y # CentOS

配置文件

nginx -t # 检查配置文件正确性 test configuration and exit

主要文件位置

  • which nginx # or whereis nginx:查看主程序文件
  • /etc/init.d/:下创建了启动脚本nginx(需手动配置),支持service nginx start命令
  • /var/log/nginx:日志文件夹,/var/log/nginx/error.log:错误日志文件,/var/log/nginx/access.log:访问日志文件
  • /etc/nginx/nginx.conf:Nginx全局站点配置文件,日志文件可以在/etc/nginx/nginx.conf中配置,默认读取的配置文件
  • /etc/nginx/conf.d:自定义Nginx站点配置文件存放目录
  • /etc/nginx/conf.d/default.conf:网站默认站点配置
  • /usr/share/nginx/html:网站文件默认存放目录
  • sites-available:则是管理大量站点时服务器的一种通用配置。
  • sites-enabled:则是一种单独配置,需要使用enabled时,需要使用ln命令软连接到相应网站。
sudo ln -s ~/path/to/your/mysite/mysite_nginx.conf /etc/nginx/sites-enabled/

/etc/nginx/nginx.conf中有如下语句:

	include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;

可见,配置文件放在sites-avaliable文件夹中,需要创建软连接在sites-enabled中,才会生效。

server_name的作用其实是当该机器上同时部署了其他域名服务时起作用的。

如果nginx中只配置一个server域的话,则nginx是不会去进行server_name的匹配的。因为只有一个server域,也就是这有一个虚拟主机,那么肯定是发送到该nginx的所有请求均是要转发到这一个域的,即便做一次匹配也是没有用的。还不如干脆直接就省了。如果一个http域的server域有多个,nginx才会根据$hostname去匹配server_name进而把请求转发到匹配的server域中。此时的匹配会按照匹配的优先级进行,一旦匹配成功进不会再进行匹配

参考:

location接受两个参数,一个字符串或者正则,和一段代码。字符串用于匹配某个特定目录。

     location / {
autoindex on;
autoindex_exact_size off; # 默认是开,以b为单位,关闭后,会显示MB GB

注意点

nginx 默认的账号权限太低,没有部分文件的访问权限,导致访问时出现 403 Forbidden

配置文件 /etc/nginx/nginx.conf

user  nginx;

应该修改为:

user root;

Nginx运行

/usr/sbin/nginx -h # 查看帮助
/usr/sbin/nginx -c /etc/nginx/nginx.conf # 默认也会读取该配置文件,所以,可以不加-c参数
nginx # 运行/usr/sbin目录下的nginx的命令
nginx -s reload # 运行这句话的前提是,nginx正在运行,重载,如果之前运行了stop,那么会提示出错 "/run/nginx.pid" failed
service nginx start
service nginx status

FAQ

Q1:nginx: [error] open() "/usr/local/var/run/nginx.pid" failed (2: No such file or directory)

Q2:中文乱码

Nginx的server的配置内容,增加一行:charset utf-8;

Q3:权限问题导致Nginx 403 Forbidden错误的解决方法

参考

Nginx 安装及配置的更多相关文章

  1. 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

    阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...

  2. ubuntu server nginx 安装与配置

    ubuntu server nginx 安装与配置 一:关于nginx http://wiki.ubuntu.org.cn/Nginx http://nginx.org/cn http://wiki. ...

  3. Nginx安装及配置详解【转】

    nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理,另外 ...

  4. [转帖]Nginx安装及配置详解 From https://www.cnblogs.com/zhouxinfei/p/7862285.html

    Nginx安装及配置详解   nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP ...

  5. Linux中Nginx安装与配置详解

    转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...

  6. centos7系统下nginx安装并配置开机自启动操作

    准备工作 我的centos7系统是最小化安装的, 缺很多库, 首先安装必须的运行库 ? 1 2 3 4 5 6 7 8 9 10 11 yum install wget gcc gcc-c++ pcr ...

  7. linux nginx安装以及配置

    一.Nginx简介 Nginx (“engine x”) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由Igor Sysoev为俄罗斯访问量第二的R ...

  8. Nginx安装以及配置

    安装编译工具及库文件 1 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 安装 PCRE 下载 PC ...

  9. Nginx安装与配置-Centos7

    Nginx是一款高性能免费开源网页服务器,也可用于反向代理和负载均衡服务器.该软件由伊戈尔·赛索耶夫于2004年发布,2019年3月11日,Nginx被F5 Networks以6.7亿美元收购.201 ...

  10. LVS+Nginx(LVS + Keepalived + Nginx安装及配置)

    (也可以每个nginx都挂在上所有的应用服务器)  nginx大家都在用,估计也很熟悉了,在做负载均衡时很好用,安装简单.配置简单.相关材料也特别多. lvs是国内的章文嵩博士的大作,比nginx被广 ...

随机推荐

  1. MYSQL导入数据时,出现错误:Incorrect string value: '\xF0\x9F...' for column 'XXX' at row 1

    Incorrect string value: '\xF0\x9F...' for column 'XXX' at row 1 这个问题,原因是UTF-8编码有可能是两个.三个.四个字节.Emoji表 ...

  2. Unity之如何从fbx提取Animation clip文件

    见代码: static void CreateAnim(string fbx, string target) { AnimationClip src = AssetDatabase.LoadAsset ...

  3. Springboot整合Mybatis 之分页插件使用

    1: 引入jar包 <!-- 引入MyBatis分页插件--> <dependency> <groupId>com.github.pagehelper</gr ...

  4. SpringMVC探究-----常用获取传递参数的方法

       1.@RequestParam @RequestParam 常用来映射请求参数,它有三个属性可以配置: value 值即请求参数的参数名 required 该参数是否必须. 默认为 true d ...

  5. 大数据处理框架之Strom: Storm----helloword

    大数据处理框架之Strom: Storm----helloword Storm按照设计好的拓扑流程运转,所以写代码之前要先设计好拓扑图.这里写一个简单的拓扑: 第一步:创建一个拓扑类含有main方法的 ...

  6. Tomcat JAR包冲突报错

    查看Tomcat下有两个PDF加密的jar包如图: 删除这个bcprov-jdk14-138.jar包,然后重启Tomcat就好了. 这个jar包和Tomcat中的一个包冲突,反复调用导致的. 参考: ...

  7. Hive 修改表结构常用操作

    添加列  add columns alter table table_name add columns (id int comment '主键ID' ) ; 默认在表所有字段之后,分区字段之前. 替换 ...

  8. 20165215 2017-2018-2 《Java程序设计》第4周学习总结

    20165215 2017-2018-2 <Java程序设计>第4周学习总结 教材学习内容总结 chapter5 子类与父类 子类的定义使用关键字extends 任何类都是Object类的 ...

  9. 微信小程序制作家庭记账本之七

    最后一天,程序完成的仍然不是很好,作品很简陋,不过还是可以记账的,没有购买域名,别人无法使用,下次我会完成的更好.

  10. linux centos 如何设置swap大小?

    linux centos 如何设置swap大小? swap的值都是安装系统的时候设置好的,一般设置为内存的两倍大小.使用过程中发现swap值过小只能添加.用free -m 命令查看当前swap大小 使 ...