Linux服务器如何配置网站以及绑定域名的详细介绍

发布时间 - 2017-05-31 00:00:00    点击率:

Nginx 服务绑定域名的方法

以 yum 安装的 nginx 为例,域名绑定需要编辑 nginx 的配置文件完成,nginx 配置文件是 /etc/nginx/nginx.conf,将默认的server {...}配置修改成如下:

修改后的意思是:

1、访问 www.123.com,会跳转到 /home/web1 目录;

2、访问 www.abc.com,会跳转到 /home/web2 目录。

修改之后重启 Nginx 服务即可。


Tomcat 服务绑定域名的方法

 域名绑定需要编辑 Tomcat 的配置文件完成,Tomcat 配置文件是 $TOMCAT_HOME/conf/server.xml$TOMCAT_HOME 是 Tomcat 的安装目录。

 将上述内容修改为:

修改后的意思是:

1、访问 www.abc.com,会默认跳转到 /data/wwwroot/default 目录;

2、访问服务器的 IP 地址 120.76.210.250,会默认跳转到 /data/wwwroot/web 目录;

修改之后重启 Tomcat 服务器,即可生效。

Apache 服务绑定域名的方法

例如使用一键安装包配置的 Apache 环境,添加网站配置方法如下:

1、进入站点配置文件目录,命令如下:

cd /alidata/server/httpd/conf/vhosts/

2、创建一个新的配置文件,命令如下:

vi aa.conf

3、按键盘上的字母 “i” ,开始编辑文件,将下面的内容复制过去。 

Order allow,denyDeny from allDocumentRoot /alidata/www/testServerName www.test.comServerAlias test.comErrorLog “/alidata/log/httpd/test-error.log”CustomLog “/alidata/log/httpd/test.log”

注意:对应的日志名字也需要自己修改一下,可以区分网站的日志信息

4、重启 Apache 测试,命令如下:

/alidata/server/httpd/bin/apachectl restart

Apache 服务配置实现多域名跳转

例如程序的目录为 /var/www/html

网站目录结构:

Apache 核心配置内容:

主要是开启 Apache 的虚拟主机功能,配置对应的虚拟主机到对应的目录即可。

实现效果:

使用a.example.com访问时,是访问到/var/www/html/a目录

使用b.example.com访问时,是访问到/var/www/html/b目录

使用c.example.com访问时,是访问到/var/www/html/c目录

 

Apache 服务配置二级域名

1、拥有一个有泛域名解析的顶级域名,例如: aliyun.com

2、在 httpd.conf 中打开 mod_rewrite 模块

3、在 httpd.conf 的最后,添加以下内容:

RewriteEngine onRewriteMap lowercase int:tolowerRewriteMap vhost txt:/usr/local/etc/apache/vhost.mapRewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$RewriteCond ${vhost:%1} ^(/.)$RewriteRule ^/(.)$ %1/$1

注意:其中的 /usr/local/etc/apache 是你的 Apache 服务器配置文件所在路径,根据实际情况更改。

4、在这个所在路径的目录下创建一个文件: vhost.map

www.aliyun.com /usr/local/www/data-dist/aliyunbbs.aliyun.com /usr/local/www/data-dist/aliyunbbsanyname.aliyun.com /usr/local/www/data-dist/anyname

注意:以上部分都是:” 域名+空格+绝对路径” 的形式。

5、在你的网站根目录 /usr/local/www/data-dist 下,创建对应目录:aliyun , bbs , anyname 等等,理论上可以无限。

这样,通过浏览器,访问 www.aliyun.com 时,实际上访问的就是 /usr/local/www/data-dist/aliyun目录下的文件。

同理,访问 bbs.aliyun.com 实际上访问的就是 /usr/local/www/data-dist/aliyunbbs 目录下的文件。

而且,你可以随时更改 vhost.map 来增加、删除、修改你的二级域名和所指向的实际路径,不用重启 Apache。

 

Apache 禁止未经许可的域名访问 ECS 上的网站

问题现象

有时 ECS 上的网站会被人恶意指向,譬如说您的 ECS 的 IP 地址为 123.123.123.123,正常服务的域名为 www.abc.com,但是此时有恶意用户使用其他的域名,恶意指向到您的网站;

如恶意用户注册了一个域名 www.fake.com,然后指向到了 IP 123.123.123.123,这样会使访问原本不属于您网站的域名 www.fake.com 也会出现您的网站内容。

解决方案

通过 Apache 的虚拟主机可以变通的解决这个问题。

测试场景:

服务器上有两个网站,分别为 t1.huigher.cn/ 和 p1.huigher.cn/

Apache 版本为 2.2.15

打开 Apache 的配置文件,CentOS 下默认位置在 /etc/httpd/conf/httpd.conf,在其中加入以下内容

注意:以实际 Apache 配置文件路径为准

1、 首先是加入以下代码,告知 Apache 使用了基于 host 名的虚拟主机功能:

NameVirtualHost *:80

2、 然后加入以下代码,作用是当客户端携带的host头不在之后设置的网站域名内时,指向一个 403 错误页面告知用户域名非法,

其中 DocumentRoot 即是放置错误提示页面的目录,在下面可以放置一个简单的 html 页面提示用户访问的域名非法 

 3、 最后加入以下代码,告知 Apache 合法的网站主机头,这个代码块根据实际情况修改内容,该实例中加入了两个网站,分别是 p1.huigher.cn 和 t1.huigher.cn

4、 最后重新启动 Apache 就可以看到效果了

5、若希望使用其他域名访问时直接返回 403 错误,可以在第二步中将代码改为以下形式:

 

重启 Apachye 后再使用其他域名访问就会直接返回 403 错误了。


# linux  # 配置文件  # 重启  # 绑定  # 您的  # 跳转到  # 虚拟主机  # 实际情况  # 目录下  # 创建一个  # 都是 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在景安云服务器上绑定域名并配置虚拟主机?  Laravel如何使用Passport实现OAuth2?(完整配置步骤)  电商网站制作价格怎么算,网上拍卖流程以及规则?  Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】  如何在企业微信快速生成手机电脑官网?  jquery插件bootstrapValidator表单验证详解  Laravel中的withCount方法怎么高效统计关联模型数量  Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧  HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】  html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】  Laravel怎么为数据库表字段添加索引以优化查询  Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理  如何彻底卸载建站之星软件?  如何用搬瓦工VPS快速搭建个人网站?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  利用 Google AI 进行 YouTube 视频 SEO 描述优化  如何在服务器上三步完成建站并提升流量?  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  大同网页,大同瑞慈医院官网?  如何快速完成中国万网建站详细流程?  JavaScript实现Fly Bird小游戏  网易LOFTER官网链接 老福特网页版登录地址  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  如何快速查询网址的建站时间与历史轨迹?  Python文本处理实践_日志清洗解析【指导】  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  如何在IIS中新建站点并配置端口与IP地址?  Laravel如何处理CORS跨域请求?(配置示例)  Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】  php json中文编码为null的解决办法  Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)  EditPlus中的正则表达式实战(6)  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  高端智能建站公司优选:品牌定制与SEO优化一站式服务  javascript日期怎么处理_如何格式化输出  HTML 中动态设置元素 name 属性的正确语法详解  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  敲碗10年!Mac系列传将迎来「触控与联网」双革新  Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布  谷歌Google入口永久地址_Google搜索引擎官网首页永久入口  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  如何解决hover在ie6中的兼容性问题  LinuxShell函数封装方法_脚本复用设计思路【教程】  1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤