nginx安装还是很简单的,虽然网上有很多的安装教程,我也看过一些,但是很多写的比较乱,比较难懂,所以就自己写一篇,希望可以帮助到大家
先说环境吧,本人用的Centos7 x86_64 同样也是现在服务器使用最多的linux发行版本,当然centos6,跟7还是有区别的,这样主要说7
第一步:先安装nginx所需要的依赖包直接yum安装就可以
yum -y install openssl zlib zlib-devel pcre pcre-devel
第二步:下载nginx安装包,我这里是指定了下载目录,如果不想下载在这个目下,只需要 把/root/Download改成你想要的目录就可以了,这个是nginx1.8.1版本,如需其他版本换成你想要的链接就可以了
wget -c -P /root/Download http://nginx.org/download/nginx-1.8.1.tar.gz
第三步:解压,编译安装
cd /root/Download tar -zxvf nginx-1.8.1.tar.gz cd nginx-1.8.1 ./configure --prefix=/usr/local/nginx make&&make install 这些命令输完后就算安装完了,现在nginx也是可以直接启动的 cd /usr/local/nginx目录,然后./sbin/nginx -c ./conf/nginx.conf启动,打开浏览器输入127.0.0.1就可以看到nginx的界面了
下面是一些nginx的反向代理和动静分离的配置信息,nginx里面#代表的就是注释。修改完配置文件后直接./nginx -t 检查有没有错,如果没报错,说明是可以通过的,直接./nginx -s reload平滑重启nginx就可以了
#user nobody; worker_processes 1;#这里的1代表的服务器是单,相应的双核就写2 #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; server_names_hash_bucket_size 128; client_header_buffer_size 128k; large_client_header_buffers 8 128k; client_max_body_size 8m; server_tokens off; #屏蔽nginx版本信息 sendfile on; tcp_nopush on; keepalive_timeout 10; client_header_timeout 10; client_body_timeout 10; reset_timedout_connection on; send_timeout 10; fastcgi_buffers 8 128k; gzip on; #开启压缩 map $http_upgrade $connection_upgrade { default upgrade; '' close; } upstream fuzai { #这里的fuzai相当于一个别名吧。名字可以随便起的 server 192.168.0.1:8080 max_fails=3 weight=1 fail_timeout=60s;#weight是权重,权重越大被分配到几率就越大 server 192.168.0.2:8080 max_fails=3 weight=1 fail_timeout=60s;#这里以三台为例。后端都是tomcat,写上相应的tomcat地址就可以了 server 192.168.0.3:8080 max_fails=3 weight=1 fail_timeout=60s; } server { #禁止通过ip访问 listen 80; server_name _; #server_name weihu.com;如果有页面要设置维护页面,把这里写成相应的网站 #拦截所有以便于重写 location ~ \.* { root assets; #这里指的html文件所存放的目录 access_log on; expires 3d; } #rewrite ^(.*)$ /weihu.html break; #这里'/'代表的是assets文件夹,因为我们上面定义了root为assets return 500; #这里代表的是没有通过下面server_name的域名返回500错误。 } server { listen 80; server_name test.com; #这里写你自己的域名的就可以,如果是多个就写多个 #charset koi8-r; #access_log logs/host.access.log main; location / { #设置主机头和客户端真实地址,以便服务器获取客户端真实IP proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://fuzai; #这里的fuzai就是我们上面取得名字 proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } #拦截静态资源,我这里采用的是根据文件后缀去匹配,还有需要拦截的直接加进去就可以了,这样也是为了初学者好理解 location ~ \.(jpg|ttf|woff|jpeg|png|ico|rar|css|js|zip|txt|flv|swf|doc|ppt|xls|pdf)$ { root assets; #当然拦截后的这些文件都会去nginx下面assets对应的目录去寻找。这里要注意路径的问题,注意里面图片的路径要保证跟tomcat下的工程图片路径。(建议直接去tomcat直接拷一份工程扔到nginx下面,还好有朋友在QQ上问我这个问题,不然我自己都忘了。) access_log on; expires 3d; } } }
转载于:https://blog.51cto.com/12638531/1901774