nginx 学习笔记二(基本配置&优化)
来源:互联网 发布:itudou mac版 编辑:程序博客网 时间:2024/05/17 09:09
配置nginx大多数情况下是我们想让他顺利支持我们的虚拟主机,那么什么是虚拟主机呢,偶抄来的解释如下:
虚拟主机--使用特殊的软硬件技术,把一台运行在因特网上的服务器主机分成一台台“虚拟”的主机,每台虚拟主机都可以是一个独立的网站,可以具有独立的域名,具有完整的Internet服务器功能(WWW,FTP,Email 等),同一台主机上的虚拟主机之间是完全独立的。从网站访问者来看,每一台虚拟主机和一台独立的主机完全一样。
解释下主配置文件部分配置
#使用的用户和组user nobody;#指定的工作衍生进程数(一般等于CPU的总核数或者总核数的两倍,例如两个四核CPU,总核数为8)worker_processes 1;#指定错误日志存放路径,错误日志记录级别可以为[ debug | info | notice | warn | error | crit ]#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#指定pid存放的路径#pid logs/nginx.pid;events { #允许的链接数 worker_connections 1024;}http { 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 on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #开启gzip压缩 #gzip on; ..................
跟apache一样,Nginx也可以配置多种类型的虚拟主机:基于ip、基于域名、基于端口
一、配置基于IP的虚拟主机
Linux、FreeBSD都允许添加IP别名(IP别名:在一块物理网卡上绑多个IP地址),这样就能够在使用单一网卡的服务器上运行多个基于IP的虚拟主机。配置步骤如下:
--运行ifconfig查看该服务起的IP地址(让你看看偶的虚拟机地址哈):
-- 现在我们添加新的IP地址
ifconfig eth0:1 10.0.2.16 broadcast 10.0.2.255 netmasK 255.255.255.0 up route add -host 10.0.2.16 dev eth0:1现在再看下我们的IP地址呀
从另外一台服务器ping 这两个ip,能ping通,则证明配置正确无误。别忘了把刚才配置命令写在(/etc/rc.local)中,让系统开机的时候自动运行。因为ifcofnig和route配置的IP别名无法在机器从启动后继续保存。
-- 现在配置支持ip的虚拟主机
server { listen 10.0.2.15:80; server_name 10.0.2.15; location / { root /var/www/nginx/iptest/; index index.html index.htm; } }server { listen 10.0.2.16:80; server_name 10.0.2.16; location / { root /var/www/nginx/iptest/; index index.html index.htm; } }由此可见,一个sever就是一个虚拟机二、配置基于域名的虚拟主机
server{ server_name www.nginxtest.com; location / { root /var/www/nginx; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } server { listen 80; server_name www.newnginx.com; location / { root /var/www/nginx/domaintest/; index index.html index.htm; } }这个偶就不多说了呀,都是仅支持静态文件。
三、nginx 的自动列目录配置
我们有时候会看见一些开源软件的下载页面是能够自动列目录的,这个功能Apache会实现,那么nginx,当然也可以实现。只要我们在nginx.conf中加入如下配置
http { autoindex on;}或者
server { listen 80; server_name www.newnginx.com; location / { #开启自动列目录配置 autoindex on; root /var/www/nginx/domaintest/; index index.html index.htm; } }
注意呀:你如果想让你的目录下自动列出目录配置,那那个目录就不能包含index index.html index.htm;所指定的文件
四、Nginx 的浏览器本地缓存设置
浏览器缓存(Browser Caching) 是为了加速浏览并节约网络资源,浏览器在用户磁盘上对最近请求过的文档进行存储。
nginx可以通过 expires 指令来设置浏览器的Header,expires指令语法如下:
语法:expires [ time | epoch | max | off ]
默认:expires off
作用域:http 、 server 、 location
- nginx 学习笔记二(基本配置&优化)
- nginx学习(二)基本配置
- nginx学习笔记二(nginx的配置)
- nginx 学习笔记(二)nginx 配置相关
- Nginx学习笔记二 -- nginx的配置
- Nginx 之二: nginx.conf 配置及基本优化
- Hibernate学习笔记(二)基本配置
- nginx学习笔记【基本配置项】
- Nginx学习笔记(二)
- Nginx基本配置与优化
- nginx基本配置学习
- Hibernate学习笔记(二)【标识符及基本级联配置】
- Hibernate学习笔记(二)【标识符及基本级联配置】
- 学习《凸优化》笔记,基本摘抄自斯坦佛版凸优化教程(二)
- nginx 学习笔记(三)基本数据结构
- nginx学习笔记(3):TCP反向代理基本配置
- nginx配置性能优化笔记
- nginx学习总结三(nginx的基本配置)
- 两个令我头疼的问题(现有项目,自己参考)
- 【Android Native Code开发系列】一 前言
- 康托展开 及其逆运算
- 程序员怎样读书
- 理解RESTful架构
- nginx 学习笔记二(基本配置&优化)
- char类型能否存放中文
- Apache Derby数据库开发
- IM 开源项目 客户端UI框架 Direct UI(01)
- 执行计划 - EXPLAIN PLAN产生的操作和选项值
- Java截取最后一个\后面的所有字符
- 网上给的前台调用后台方法汇总
- 表单验证插件 jQuery plugin: Validation
- objective-c入门