首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的。教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈~我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转到教程
1、下载Nginx,进入Nginx下载地址:http://nginx.org/
点击nginx-1.8.0,进入:http://nginx.org/en/download.html,下载文件:
2 下载pcre,这个是一个正则表达式的库,Nginx做rewriter的时候回用到这个库:
进入pcre的官网(rewrite模式需要pcre):http://www.pcre.org/
选中右击复制所需要的版本:
3 下载zlib库(gzip模块需要zlib):http://www.zlib.net/
4.将下面安装文件上传到Linux服务器上:
5 开始安装Nginx。
在正式开始前,编译环境gcc g++开发库之类的需要提前安装好,这里默认你已经安装好。Ubuntu平台环境可以使用以下指令
apt-get install build-essential |
apt-get install libtool |
Centos平台编译环境使用如下指令
安装make
yum -y install gcc automake autoconf libtool make |
安装g++
yum install gcc gcc-c++ |
Nginx依赖以下模块:
gzip模块需要zlib库
rewrite模块需要pcre库
ssl功能需要openssl库
一般我们需要先安装pcre,zlib,前者为了重写rewrite,后者为了gzip压缩。
选定源码目录,选定/usr/local/src
下载openssl,地址:ftp://ftp.openssl.org/source/
tar -zxvf openssl-1.0.1c.tar.gz (下载稳定版本)
cd openssl-1.0.1c
./config && make && make install
安装pcre
tar zxvf pcre-8.37.tar.gz
cd pcre-8.37
./configure && make && make install
安装zlib库
tar zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure && make && make install
安装nginx.
Nginx一般有两个版本,分别是稳定版和开发版,您可以根据您的目的来选择这两个版本的其中的一个,下面是把Nginx安装到/usr/local/nginx目录的详细步骤如下:
tar zxvf nginx-1.8.0.tar.gz
cd nginx-1.8.0
mkdir /usr/local/nginx
groupadd -r nginx
useradd -r -g nginx -s /bin/false -M nginx
#注意 \ 前面至少一个有空格
[root@localhost src]# cd nginx-1.8.0
[root@localhost nginx-1.8.0]# groupadd -r nginx
[root@localhost nginx-1.8.0]# useradd -r -gnginx -s /bin/false -M nginx
##注意:下面的with后面的路径要正确。若是不正确,请确定后重新编写下面的路径配置。
[root@localhost nginx-1.8.0]# ./configure--sbin-path=/usr/local/nginx/nginx \
>--conf-path=/usr/local/nginx/nginx.conf \
> --pid-path=/usr/local/nginx/nginx.pid\
> --with-http_ssl_module \
> --with-pcre=../pcre-8.37 \ #指向解压的源码目录
> --with-zlib=../zlib-1.2.8 \ #指向解压的源码目录
> --with-openssl=../openssl-1.0.1c \ #指向解压的源码目录
> --with-http_stub_status_module \
> --user=nginx \
> --group=nginx;
make && make install
在此过程中还可以使用下面的模块:
> --with-http_gzip_static_module \
> --with-http_mp4_module \
> --with-http_flv_module \
安装后的现象:
进入/usr/local/nginx,发现有如下内容:
启动nginx
/usr/local/nginx/nginx #不指定配置文件地址
/usr/local/nginx/nginx -c/usr/local/nginx/nginx.conf #指定配置文件地址
若此过程中出现了如下错误:
nginx: [emerg] bind() to0.0.0.0:80 failed (98: Address already in use)
使用命令关闭占用80端口的程序
sudo fuser -k 80/tcp
停止服务:
kill `cat /usr/local/nginx/nginx.pid`
在浏览器中输入:192.168.6.25(如果是本机输入localhost)如果看到欢迎界面则安装成功:
虚拟主键配置:
只需要更改server_name为对应的网站域名即可:
/usr/local/nginx
vim nginx.conf
检测配置文件
/usr/local/nginx/nginx -t
重新加载配置文件(不停止服务)
/usr/local/nginx/nginx -s reload
Nginx编译参数解析:
–prefix #nginx安装目录,默认在/usr/local/nginx –pid-path #pid问件位置,默认在logs目录 –lock-path #lock问件位置,默认在logs目录 –with-http_ssl_module #开启HTTP SSL模块,以支持HTTPS请求。 –with-http_dav_module #开启WebDAV扩展动作模块,可为文件和目录指定权限 –with-http_flv_module #支持对FLV文件的拖动播放 –with-http_realip_module #支持显示真实来源IP地址 –with-http_gzip_static_module #预压缩文件传前检查,防止文件被重复压缩 –with-http_stub_status_module #取得一些nginx的运行状态 –with-mail #允许POP3/IMAP4/SMTP代理模块 –with-mail_ssl_module #允许POP3/IMAP/SMTP可以使用SSL/TLS –with-pcre=../pcre-8.11 #注意是未安装的pcre路径 –with-zlib=../zlib-1.2.5 #注意是未安装的zlib路径 –with-debug #允许调试日志 –http-client-body-temp-path #客户端请求临时文件路径 –http-proxy-temp-path #设置http proxy临时文件路径 –http-fastcgi-temp-path #设置http fastcgi临时文件路径 –http-uwsgi-temp-path=/var/tmp/nginx/uwsgi #设置uwsgi 临时文件路径 –http-scgi-temp-path=/var/tmp/nginx/scgi #设置scgi 临时文件路径 |
6 nginx.conf配置说明:
nginx.conf是主配置文件。
worker_processes 表示工作进程的数量,一般设置为cpu的核数 |
| ||
worker_connections 表示每个工作进程的最大连接数 |
| ||
server{}块定义了虚拟主机 | listener监听端口 |
| |
server_name监听域名 |
| ||
Location{}是用来匹配的URI进行配置,URI即语法中的”/uri”。Location /{}匹配任何查询,因为所有请求都以/开头。 | root 指定对应uri的资源查找路径,这里html位相对路径,完整路径为/usr/local/nginx/html | ||
Index指定首页index文件的名称,可以配置多个,以空格分开。如有多个,按配置顺序查找。 | |||
从配置可以看出,nginx监听了80端口、域名为localhost、跟路径为html文件夹(我的安装路径为/usr/local/nginx,所以:/usr/local/nginx/html),默认index文件为index.html,index.htm、服务器错误重定向到50x.html页面。