本日志标题:Linux(CentOS7)下Web服务器Nginx安装和配置        [2018-11-16]



安装和部署建议:
1、如果是要跑Java项目的服务器,推荐安装 Nginx+Tomcat+MySQL,可支持多个tomcat启动。
2、如果是跑PHP项目,推荐安装 Nginx+PHP+MySQL,Apache可以不用安了。
3、如果MySql数据库是单独购买的云数据库RDS,则直接忽略MySQL的安装方法。

各类安装配置的传送
1、Linux(CentOS)下Web服务器Nginx安装和配置
2、Linux(CentOS)下MySQL的安装和配置
3、Linux(CentOS)下Java服务Tomcat的安装和配置
4、Linux(CentOS)下PHP环境的安装和配置

说明:原则上安装的先后没有顺序。
centos下的安装基本采用yum方案进行,所以,最好是拿到服务器之后先升级yum


#yum upgrade


输入命令之后会提示下载,输入“y”同意即可


正文:Linux(CentOS)下Web服务器Nginx安装和配置——yum方式


一、为什么是Nginx,Nginx能做什么?

服务器一般是需要提供web服务的,即当用户输入 http://域名或ip 向服务器请求时,服务器上需要有服务进行响应,响应的容器我们称之“web服务器”

目前,最主流的三个Web服务器是:Apache、Nginx和IIS。

排除IIS是微软产品,基本需要在Windows环境下使用不谈以外,Linux下使用最频繁的就Apache和Nginx了。

一般项目推荐使用Nginx,而不安装Apache,两者的比较可以百度出很多,这里想说的是Nginx轻、效率高,即“性价比”优秀。

另外,Nginx除了可做web服务以外,其具备的反向代理功能还可进行负载均衡的配置。


二、下载Nginx

Nginx的官方站提供了安装包文件,可选择查看包文件源路径,然后通过wget命令下载到服务器,然后进行安装make。
http://nginx.org/en/download.html

但这不是本文介绍的,这里只采用最简单快速的方式进行。即yum包直接安装。

yum是什么?Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。
yum基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

所以,为什么说要在文首请大家拿到服务器就进行的yum upgrade的原因,拿到各类软件的最新升级包。


三、安装Nginx

不废话,yum一句话安装nginx


#yum install nginx


出现提示下载时,选择“y”继续即可。

*、如果需要卸载ngixn,则使用下列命令
#yum remove nginx

*、如果输入命令yum install nginx出现“没有可用软件包nginx”,那就是说明nginx还不在当前centos的yum源中。

那就先执行“yum install epel-release”,再执行“yum update”、最后再来“yum install nginx”


四、启动Nginx

安装完毕后的nginx需要启动起来才能提供web服务,一句话命令


#service nginx start


此时访问http访问服务器,则能看到nginx的默认页面,表示安装成功、服务成功



查看nginx的版本
#nginx -v

查看nginx的当前状态
#systemctl status nginx.service

五、开机自动启动Nginx服务

一般,当服务器重启之后Nginx没有自动重启,所以需要把nginx自动启动配置起来,同样是一句话命令


#systemctl enable nginx.service


如果已经开启了自动启动,但因各类原因不希望开机自动启动nginx,则可进行关闭,命令如下:
#systemctl disable nginx.service


六、Nginx的web相关配置

通过yum方式安装的Nginx,cd /etc/nginx/ 查看nginx的配置


【最后总结一下】


//建议先将yum包进行更新
#yum upgrade

//直接使用yum包内的nginx进行安装
#yum install nginx

//安装完nginx进行启动
#service nginx start

//配置nginx为开机自动启动
#systemctl enable nginx.service



【其他相关】Nginx中文文档:http://www.nginx.cn/doc/




# nginx -s reload:修改配置后重新加载生效
# nginx -s reopen:重新打开日志文件
# nginx -s stop:快速停止nginx
# service nginx start; 启动nginx
# service nginx restart; 重启nginx




解决Nginx出现500错误时不显示具体错误内容的办法

把nginx的配置文件中的


error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}


改成:


# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# root html;
# }



这样,就显示出来程序自己的错误信息了,看到这些具体问题的错误信息,就可以快速定位问题并解决问题。


可以通过Nginx的错误日志查看页面被访问的执行情况,浏览“/var/log/nginx/error.log

=========Nginx配合tomcat的静态文件配置================


server {

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css|html)$ #设定访问静态文件直接读取不经过tomcat
    {
     root /usr/local/resources/wechat;
access_log off;
        expires 30d;
    }

    location ~ ^/(WEB-INF)/ { #这个很重要,不然用户就可以访问了
        deny all;
    }
}



=========Nginx配置多域名跳转多tomcat端口==========


    server {
listen 80;
server_name ip或域名;

location / {
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://localhost:8080/;
#域名重定向
}

location /api {
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://localhost:8081/;
#域名重定向
}

}


在百度搜索完整的Linux(CentOS7)下Web服务器Nginx安装和配置内容,或者用Google搜索相关的更多内容

By [cnbruce] at 19:53:47 | 评论 [0] | 浏览 [6343] | TrackBack| 返回顶部

About Comments
此篇日志暂时没有相关的说明和评论。:)


Post a Comment
呢称: 验证码: 
禁止笑脸转换 禁止UBB | 缩放输入框:6 5 | [Ctrl+Enter提交](1000个字符限制)