一 Nginx下载安装
1.1安装Nginx依赖库
Ubuntu下
apt-get install build-essential
apt-get install libtool
CentOS下可使用yum安装
centos平台编译环境使用如下指令
安装make:
yum -y install gcc automake autoconf libtool make
安装g++:
yum install gcc gcc-c++
1.2 安装pcre依赖库
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
1.3 安装zlib依赖库
apt-get install zlib1g-dev
1.4 安装ssl依赖库
apt-get install openssl
1.5安装Nginx
1.5.1下载Nginx 版本可自行选择
wget http://nginx.org/download/nginx-1.11.3.tar.gz
1.5.2 解压并配置编辑
#解压
tar -zxvf nginx-1.11.3.tar.gz
#进入目录
cd nginx-1.11.3
#配置
./configure --prefix=/usr/local/nginx
#编辑
make
1.5.3 安装Nginx
sudo make install
二 配置nginx.conf
要跑的程序放在Nginx安装目录下的html文件夹里即可,也可在下面的nginx.conf中配置访问路径
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#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 on;
server {
listen 8081; #安全组内端口,并且不和其他程序冲突
server_name 111.11.111.111; #服务器公网ip
#charset koi8-r;
#access_log logs/host.access.log main;
#静态页面目录 默认为Nginx下的html文件夹 可配置成其他目录 绝对路径即可
root /usr/local/nginx/html;
#
#默认首页 上面root路径下的文件
index index.html;
# location / {
#用户浏览器端的缓存设置
# location ~* \.(css|js|jpg|jpeg|gif|png|swf|html|htm|json|xml|svg|woff|xsl|xslx|doc|docx|zip|rar)$ {
# expires 1h;
# if (-f $request_filename){
# break;
# }
# }
# if (!-e $request_filename){
# proxy_pass http://127.0.0.1:8088;
# }
#
# }
#自定义丢失页面
#error_page 404 /404.html;
#自定义错误页面
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
三 常用命令
3.1 启动
# 绝对路径启动 例如下面/usr/local为Nginx的安装目录
/usr/local/nginx/sbin/nginx
#相对路径启动 进入Nginx安装目录下执行
./sbin/nginx
3.2 停止
./sbin/nginx -s stop
./sbin/nginx -s quit
3.3 指定一个路径下的conf为Nginx的配置文件
./sbin/nginx -c /usr/local/nginx/conf/nginx.conf
3.4 重新加载配置文件
./sbin/nginx -s reload
3.5 查看Nginx进程
ps -ef|grep nginx
3.6 kill进程
# kill进程号
kill -9 进程号
# 一次Kill掉所有nginx进程
sudo killall nginx
3.7 查看是否被占用
netstat -aon|findstr"80"
四 常见错误
4.1pid丢失
错误信息如下:
[root@yoodb.com ~]# /usr/local/nginx/sbin/nginx -s reload
nginx: [error] open() “/usr/local/nginx/logs/nginx.pid” failed (2: No such file or directory)
解决方案:
a. Nginx安装目录下,找到 conf/nginx.conf.default 文件。
b. 打开文件找到 #pid logs/nginx.pid; 去除行首的#
c. 返回到sbin文件夹下 cd ../sbin/
d. ./nginx -c /安装路径/conf/nginx.conf.default #路径例如/usr/local
e. cd ../logs/ && ll #返回并查看 可以看到nginx.pid了
4.2 启动报错
错误信息 : 进程已存在
解决方案:ps -ef|grep nginx 检查后Kill掉进程
4.3 编辑
错误信息:
pcre.h No such file or directory
解决方案:
#安装libpcre3
sudo apt-get install libpcre3-dev