阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Nginx的安装和多域名配置

109次阅读
没有评论

共计 1574 个字符,预计需要花费 4 分钟才能阅读完成。

Nginx 安装

centos6.x yum 默认没有 nginx 的软件包 安装方式:到 nginx 下载页面 http://nginx.org/en/Linux_packages.html#stable,复制 CENTOS 6 的 nginx 软件源安装包 运行命令:

Nginx 的安装和多域名配置

安装 rpm 包

Nginx 的安装和多域名配置

此步实际只是加入了 nginx 的软件包源

执行 yum install nginx -y 就可以安装好 nginx 了。

nginx 默认安装为 Linux 的服务 , 所以可以使用 service nginx start, stop, restart, try-restart, reload, force-reload, status 来操作 nginx。

Nginx 配置文件

nginx 的配置文件默认读取 /etc/nginx/nginx.conf 文件。

当然也可以修改使用的 conf 路径,使用命令:

Nginx 的安装和多域名配置

可以相对路径或者绝对路径。如果是不熟悉环境的 Linux 服务器,可以使用命令来快速查找 nginx.conf 文件 :

Nginx 的安装和多域名配置

也可以使用命令

Nginx 的安装和多域名配置

来输出正在使用的配置文件:

Nginx 的安装和多域名配置

nginx 的配置都是由 directives 组成,directives 由简单指令或者区块指令组成 简单指令:listen 80; 区块指令由{}包含,区块指令又可以包含多个简单指令和区块指令:

Nginx 的安装和多域名配置

多域名配置

我们都知道如果在域名管理的控制面板设置域名对应 ip 只能设置到 ip,不能详细设置到端口。如果一台服务器部署了多个 web 应用,使用的不同端口启动的,那么就可以 Nginx 做映射。

比如我有一个域名 www.525.life。

域名还可以分出 2 级域名: admin.525.life。

我在域名控制面板把这两个域名都指向我的服务器公网 ip 123.123.123.123。

这时候发现 www.525.life 和 admin.525.life 域名访问都只是对应到了 使用端口 80 的 Web 程序 (默认的)。

如果我们要访问 81 端口的应用程序只能使用:

www.525.life:81 或者

admin.525.life:81。

但是这样很不方便。我们要把端口去掉也能访问就需要使用 Nginx 做映射。

我们期望 www.525.life 访问 8880 端口,admin.525.life 访问 8881 端口。那么可以设置如下:

Nginx 的安装和多域名配置

这样设置就可以了。把 8880 和 8881 都映射到 80 端口的监听。

使用重载命令使 nginx 生效:

Nginx 的安装和多域名配置

使用命令重启 nginx 生效:

Nginx 的安装和多域名配置

这样就能使用 www.525.life 访问 8880 端口,admin.525.life 访问 8881 端口。

每个域名一个 conf 的写法

我们在上面的例子中使用的是一个文件多个域名的写法,也就是只使用一个 conf,在里面不断的增加 server。这种方式很直观,但是域名多了不好管理。Nginx 支持引入的用法,也就是我们可以在其他地方先新建好 conf 文件,conf 文件中记录 server 的信息如下:admin.conf 中的内容是:

Nginx 的安装和多域名配置

www.conf 中的内容是:

Nginx 的安装和多域名配置

admin.conf 和 www.conf 都放在 /data/nginx/conf/vhost 目录下。然后在 nginx.conf 中使用引入命令:

Nginx 的安装和多域名配置

即可。需要注意的是这句命令应该放在 http{} 的花括号内。因为 include 的命令引入相当于被引入的所有代码写在 nginx.conf 中一样。

301 跳转

我们留意到生活中很多时候不带 www 也能访问到某个网站,这也能通过 Nginx 实现。跟上面的配置一样,再增加一个 server 如下:

Nginx 的安装和多域名配置

或者进行 301 跳转

Nginx 的安装和多域名配置

添加 404 网页

添加 404 网页,都可又直接在里面添加,如:

Nginx 的安装和多域名配置

禁止 IP 直接访问

最后还有一个方法需要注意,可能有需要禁止 IP 直接访问 80 端口或者禁止非本站的域名绑定我们的 IP,这样的话应该如下处理,放到最前一个 server 上面即可:

Nginx 的安装和多域名配置

马哥想听你动人的成长故事,所以发起了一个征文活动。

点击阅读原文或长按二维码添加我的个人微信,立刻了解详情。

Nginx 的安装和多域名配置

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-12-03发表,共计1574字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中