Linux 服务器如何配置网站以及绑定域名

转载来源:http://www.xinnet.com/service/cjwt/idc/guanli/1424.html

  以下列举一些 主机上常见的 Web 程序的域名绑定和站点配置:

  Nginx 服务绑定域名的方法

  Tomcat 服务绑定域名的方法

  Apache 服务绑定域名的方法

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

  Apache 服务配置二级域名

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

  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 禁止未经许可的域名访问 主机上的网站

  问题现象

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

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

  解决方案

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

  测试场景:

  服务器上有两个网站,分别为 http://t1.huigher.cn/ 和 http://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 错误,可以在第二步中将代码改为以下形式:

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

转载来源:http://www.xinnet.com/service/cjwt/idc/guanli/1424.html

Linux 服务器配置网站以及绑定域名的更多相关文章

  1. Linux 服务器配置、运行、不用敲命令(新手必备!) - 宝塔全攻略建站一条龙

    Linux 服务器配置.运行.不用敲命令 WordPress 建站攻略 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整 ...

  2. Linux服务器配置DNS解析

    概述 DNS(Domain Name System,域名系统) DNS的作用,简单的说:就是把我们输入的网站域名翻译成IP地址的系统. 本文建立在已搭建好DNS服务器,这里讨论为linux机器配置DN ...

  3. Linux服务器配置之加载硬盘

    Linux服务器配置之加载硬盘 1.修改密码 passwd 2.测试密码是否成功 3.查看硬盘信息 fdisk –l 4.格式化分区 fdisk /dev/vdb 5.查看分区 6.快速格式化/dev ...

  4. CentOS下配置多个Tomcat同时运行 本篇文章来源于 Linux公社网站(www.linuxidc.com)

    原文地址:http://blog.csdn.net/tjcyjd/article/details/46553361 版权声明:本文为博主原创文章,未经博主允许不得转载. 同一服务器部署多个tomcat ...

  5. Linux服务器配置(一)

    Linux服务器配置(一) jdk,tomcat,nginx记录 最近公司买了三台服务器System x3650 M5用来跑公司的项目.现,记录一下真机部署与后期维护历程~ 因为系统是服务器买来就装好 ...

  6. Weebly免费自助建站空间:可视化编辑网页搭建网站和绑定域名方法

    Weebly空间来自美国,已经稳定运行了有多年了,2007年被Time 评为50个最佳网站,属自助建站模式,功能强大.部落在09年时介绍了weebly.com自助建站服务,没有想到这多年来,Weebl ...

  7. 数据库学习网站和linux学习网站

    Oracle ITPub论坛 http://www.itpub.net 著名IT技术论坛.尤以数据库技术闻名. ITPUB论坛的前身应该是建立在 smiling 的 oracle小组,他们搬家前的主页 ...

  8. 关于Linux服务器配置java环境遇到的问题

    关于Linux服务器配置java环境遇到的问题 将下载好的JDK安装包解压到/etc/local/路径下,安装完后用vim/etc/profile文件,在文件末尾添加 export JAVA_HOME ...

  9. 优秀的linux学习网站

    从网络上拷贝别人归纳的列表. Linux优秀网站列表 国内 http://www.chinaunix.net/ 国内最火爆的unix/linux论坛 http://www.linuxforum.net ...

随机推荐

  1. [No000012B]WPF(3/7)有趣的边框和画刷[译]

    介绍 边框是每个WPF程序的主要构成块.在我现在的程序中,我使用了很多的边框来装饰界面.从把边框直接放到窗口中到把边框放到控件模板和列表项中,边框在创建一个好的应用界面上扮演了一个非常重要的角色.在这 ...

  2. sklearn.utils.shuffle-训练数据打乱的最佳方法

    在进行模型训练前,我们要将数据打乱,以获得更好的训练效果.可以使用sklearn.utils中的shuffle,获得打乱后的数据索引,最后,迭代生成打乱后的batch数据,一个写好的模块如下. 思路是 ...

  3. Will vs Be Going To vs Present Continuous: Talk About the Future in English

    https://www.youtube.com/watch?v=UISiuiPd_FY will 说话的当下决定的将来要做什么,in the moment be going to 有意图去做,但没有计 ...

  4. Java向服务端转身 系统平台所对应的机器语言 虚拟CPU的机器语言字节码 bytecode

    小结: 1.虚拟CPU的模拟器:java虚拟机 JVM Java将虚拟机(VM)作为插件集成到浏览器中,将编译后的Java程序(Applet)在虚拟机上运行,这种技术 当初是为了增强浏览器的功能. J ...

  5. iOS之分类(category)

    1.分类(category)的作用 1.1作用:可以在不修改原来类的基础上,为一个类扩展方法.1.2最主要的用法:给系统自带的类扩展方法. 2.分类中能写点啥? 2.1分类中只能添加“方法”,不能增加 ...

  6. 转:Eclipse 各种小图标的含义

    原文地址:https://www.cnblogs.com/widget90/p/7592507.html Eclipse 各种小图标的含义,记录一下. Eclipse的Package Explorer ...

  7. 内部排序->插入排序->其它插入排序->2-路插入排序

    文字描述 在折半插入排序的基础上进行改进, 另设一个和待排序序列L相同的数组D, 首先将L[1]赋值给D[0], 数组D中数据是已经排好序的, first指向最小值下标,final指向最大值下标.初始 ...

  8. 使用Python + Selenium破解滑块验证码

    在前面一篇博客<使用 Python + Selenium 打造浏览器爬虫>中,我介绍了 Selenium 的基本用法和爬虫开发过程中经常使用的一些小技巧,利用这些写出一个浏览器爬虫已经完全 ...

  9. Mybatis中dao接口和mapper 的加载过程

    这里考虑的是mybatis和spring整合的场景 1.在系统启动的时候,会去执行配置文件中有关扫描mybatis接口的配置:通过MapperScannerConfigurer扫描接口生成spring ...

  10. java 线程 (三)线程并发的安全性 同步代码块

    package cn.sasa.demo1; import java.util.concurrent.ExecutionException; public class ThreadDemo { pub ...