Nginx¶
Nginx 安装配置¶
Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 在高连接并发的情况下,Nginx是Apache服务器不错的替代品。 Nginx 安装 系统平台:CentOS release 6.6 (Final) 64位。 一、安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 二、首先要安装 PCRE PCRE 作用是让 Nginx 支持 Rewrite 功能。 1、下载 PCRE 安装包 wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz 2、解压安装包: tar zxvf pcre-8.35.tar.gz 3、进入安装包目录 cd pcre-8.35 4、编译安装 ./configure make && make install 5、查看pcre版本 pcre-config --version
安装 Nginx 1、下载 Nginx wget http://nginx.org/download/nginx-1.6.2.tar.gz 2、解压安装包 tar zxvf nginx-1.6.2.tar.gz 3、进入安装包目录 cd nginx-1.6.2 4、编译安装 ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35 make make install 5、查看nginx版本 /usr/local/webserver/nginx/sbin/nginx -v 到此,nginx安装完成。
Nginx 配置 创建 Nginx 运行使用的用户 www: /usr/sbin/groupadd www /usr/sbin/useradd -g www www 配置nginx.conf ,将/usr/local/webserver/nginx/conf/nginx.conf替换为以下内容 cat /usr/local/webserver/nginx/conf/nginx.conf
user www www; worker_processes 2; #设置值和CPU核心数一致 error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; #日志位置和日志级别 pid /usr/local/webserver/nginx/nginx.pid;
Specifies the value for maximum file descriptors that can be opened by this process.¶
worker_rlimit_nofile 65535; events { use epoll; worker_connections 65535; } http { include mime.types; default_type application/octet-stream; log_format main 'remote_addr - remote_user [time_local] "time_local] "time_local] "time_local] "request" ' 'status body_bytes_sent "http_referer" ' '"http_referer" ' '"http_referer" ' '"http_referer" ' '"http_user_agent" $http_x_forwarded_for';
charset gb2312;¶
server_names_hash_bucket_size 128; client_header_buffer_size 32k; large_client_header_buffers 4 32k; client_max_body_size 8m;
sendfile on; tcp_nopush on; keepalive_timeout 60; tcp_nodelay on; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 64k; fastcgi_buffers 4 64k; fastcgi_busy_buffers_size 128k; fastcgi_temp_file_write_size 128k; gzip on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.0; gzip_comp_level 2; gzip_types text/plain application/x-javascript text/css application/xml; gzip_vary on;
#limit_zone crawler $binary_remote_addr 10m; #下面是server虚拟主机的配置
server { listen 80;#监听端口 server_name localhost;#域名 index index.html index.htm index.php; root /usr/local/webserver/nginx/html;#站点目录 location ~ .*\.(php|php5)?$ { #fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi.conf; } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$ { expires 30d; # access_log off; } location ~ .*\.(js|css)?$ { expires 15d; # access_log off; } access_log off; } }
启动 Nginx Nginx 启动命令如下: /usr/local/webserver/nginx/sbin/nginx
访问站点 从浏览器访问我们配置的站点ip:
Nginx 其他命令 以下包含了 Nginx 常用的几个命令: /usr/local/webserver/nginx/sbin/nginx -s reload # 重新载入配置文件 /usr/local/webserver/nginx/sbin/nginx -s reopen # 重启 Nginx /usr/local/webserver/nginx/sbin/nginx -s stop # 停止 Nginx
编译安装¶
安装编译环境 APT apt-get install build-essential apt-get install libtool YUM yum -y install gcc automake autoconf libtool make yum install gcc gcc-c++ 选定源码目录 cd /usr/local/src 编译安装PCRE(rewrite),zlib(压缩)和openssl(https) PCRE wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.42.tar.gz # 不是pcre2 或 curl -O ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.42.tar.gz tar -zxvf pcre-8.42.tar.gz cd pcre-8.42 ./configure # 检测你的安装平台的目标特征,创建Makefile make # 编译 make install # 安装到指定位置
ZLIB cd /usr/local/src wget https://jaist.dl.sourceforge.net/project/libpng/zlib/1.2.11/zlib-1.2.11.tar.gz tar -zxvf zlib-1.2.11.tar.gz cd zlib-1.2.11 ./configure make make install
SSL cd /usr/local/src wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz tar -zxvf openssl-1.1.1a.tar.gz
安装nginx cd /usr/local/src wget http://120.52.51.15/nginx.org/download/nginx-1.15.8.tar.gz tar -zxvf nginx-1.15.8.tar.gz cd nginx-1.15.8 sudo ./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=/usr/local/src/pcre-8.42 \ --with-zlib=/usr/local/src/zlib-1.2.11 \ --with-openssl=/usr/local/src/openssl-1.1.1a make make install
安装完成验证启动 sudo /usr/local/nginx/nginx
停止 sudo /usr/local/nginx/nginx -s stop 或 ps -aux |grep nginx # 查找nginx进程或ps -ef kill -9 [PID] # nginx的PID进程号 或 netstat -apn |grep 80 # 查找80端口占用 kill -9 [PID] # nginx的PID进程号 或 sudo /usr/local/nginx/nginx -s quit 或 killall nginx
查看端口号占用 ntestat -tlnp # t查看TCP,l查看监听服务,n不解析名称,p端口号
注意firewalld放行端口 帮助 sudo /usr/local/nginx/nginx -h
后续操作¶
添加到环境变量 ln -s /usr/local/nginx/nginx /usr/local/sbin/nginx # 添加软连接(快捷方式) 此时可以在任意目录以nginx命令运行程序
配置文件¶
启动 启动代码格式:nginx安装目录地址 -c nginx配置文件地址 例如: $ /usr/local/nginx/nginx -c /usr/local/nginx/nginx.conf
检查配置文件的正确性 sudo /usr/local/nginx/nginx -t
添加服务¶
nginx一般启动 sudo /usr/local/nginx/nginx
向/etc/init.d/添加启动文件 touch nginx 添加启动脚本 NGINX Init Scripts | NGINX centos7 记得修改脚本里的路径 vim /etc/init.d/nginx 修改PATH和DAEMON路径 PATH=/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/nginx/nginx 给脚本添加运行权限 sudo chmod +x /etc/init.d/nginx
守护进程重载(关键步骤) systemctl daemon-reload
启动|停止|重启|查看状态nginx sudo service nginx start|stop|restart|status 或 sudo systemctl start|stop|restart nginx
functions network