Nginx是什么
Nginx是一个毛子搞得静态服务器,一般来讲可以用来做
- 反向代理
- 资源服务器(图片服务器为主)
安装完毕后,记得打开防火墙和端口 参考文章服务器入门
Linux下安装Nginx
下载安装包
首先下载安装包到目录 /usr/local 里,我们使用的是1.10.1版本
1 | cd /usr/local |
解压缩,其中 z代表tar.gz格式 v代表显示详情 x代表解压 f代表指定文件
安装依赖
在Linux中是编译安装,所以要准备一系列工具
1 | yum install pcre-devel make gcc gcc-c++ ncurses-devel perl zlib zlib-devel openssl openssl-devel |
工具目的 | 程序 |
---|---|
编译器 | make gcc gcc-c++ |
安全协议 | openssl openssl-devel |
语言 | perl脚本语言 |
正则表达式库 | pcre-devel(用于perl语言) |
压缩库 | zlib zlib-devel |
字符处理库 | ncurses-devel |
然后选择y进行安装
编译安装Nginx
首先新建一个nginx安装目录,位于 /usr/local/nginx, 然后切换到安装包nginx-1.10.1内
1 | mkdir nginx |
执行Configuration配置检查文件,指定目录到刚刚新建的nginx目录里
1 | ./configure --prefix=/usr/local/nginx |
Configuration配置完成后输出一系列目录和信息
1 | Configuration summary |
执行make操作和make install进行安装
1 | make |
移动命令工具
安装完成后,将nginx命令移动到$PATH的目录下,这样就不用每次都cd到 /usr/local/sbin 里去运行了
1 | mv /usr/local/nginx/sbin/nginx /usr/local/bin/ |
设定配置和修改端口
修改nginx.conf配置文件中的默认端口,以防冲突,默认端口是80
1 | vim /usr/local/nginx/conf/nginx.conf |
然后使用nginx -c 命令指定配置文件,接着使用 nginx -t 命令检查配置文件是否正确,得到反馈syntax is ok
1 | nginx -c /usr/local/nginx/conf/nginx.conf |
使用nginx -s reload 重新加载nginx配置服务
小问题
如果碰见如下问题,使用 nginx -s stop 停止服务,重新指定配置文件然后检查和reload操作即可
1 | nginx: [error] invalid PID number "" in "/usr/local/nginx/logs/nginx.pid" |
Mac下安装Nginx
Mac 下安装Nginx就很简单啦,先装个homebrew,然后执行
1 | brew install nginx |
就完成了一键安装,虽然是不是最新版本,你就凑合着调试用吧,但是homebrew安装的有一点不好,和Linux的配置文件还有root目录不在一起
Nginx的root目录问题和配置文件问题
安装路径
首先是安装路径的问题,Linux下的安装目录是在configuration时指定的 prifix=/use/local 而 homebrew是安装在brew的目录下
系统 | 路径 | 安装工具 |
---|---|---|
Linux | /usr/local/nginx | camke gcc 编译安装 |
Mac | /usr/local/Cellar/nginx | homebrew一键安装 |
配置文件位置不同
采用homebrew安装的nginx配置文件路径也不同
系统 | 路径 |
---|---|
Linux | /usr/local/nginx/conf/nginx.conf |
Mac | /usr/local/etc/nginx/nginx.conf |
root目录
其次两者root目录的文件性质也不同
系统 | 路径 | 备注 |
---|---|---|
Linux | /usr/local/nginx/html | 正常的文件夹 |
Mac | /usr/local/Cellar/nginx/版本号/html | 指向/usr/local/var/www的软链接 |