服务器多个站点(一个服务器可以放多个网站吗)
- 服务器
- 2022-12-21 01:23:54
- 19
本篇文章给大家谈谈服务器多个站点,以及一个服务器可以放多个网站吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、IIS如何设置一台服务器建多个网站
- 2、如何在一台服务器上实现多个Web站点
- 3、技术文!分享下如何将多个站点建立在同一个服务器上!!
- 4、如何在Nginx服务器中设置多个站点
- 5、如何在一台服务器上运行多个网站
- 6、一台服务器支持多个域名和站点
IIS如何设置一台服务器建多个网站
一个IP建多个Web站点
TCP端口法
由于各种原因,我们有时候需要在一个IP地址上建立多个web站点,在IIS5中,我们可能通过简单的设
置达到这个目标。
在IIS中,每个 Web 站点都具有唯一的、由三个部分组成的标识,用来接收和响应请求:
(1) IP地址
(2) 端口号
(3) 主机头名
在IIS中,在一个IP地址上建立多个独立的web站点,通常有两种方法,本文以以例子的形式介绍TCP端
口法。
环境:假设深圳市某某公司的内部网由一台win2000服务器和几十台工作站组成,这个内部网的网段
是192.168.1.0/24,服务器的地址是192.168.1.10,名称是myserver。在这台服务器已经安装了Internet
服务,即IIS 5。沧海公司有A,B,C三个部门,分别在8086,8087,8088三个房间办公。现在公司要求网络
管理员在服务器上使用一个IP为公司和三个部分别建立一个网站,即要建立四个网站。
通过使用附加端口号,站点只需一个 IP 地址即可维护多个站点。客户要访问站点时,需在静态IP地
址后面附加端口号(默认 Web 站点除外,它使用端口 80)。
具体操作如下:
1、在win2000服务器上为公司和三个部门在硬盘上建立文件夹,做为WEB站点主目录。如下:
WEB站点主目录WEB站点
d:\web\com 公司网站
d :\web\a A部门网站
d:\web\b B部门网站
d:\web\c C部门网站
2、使用WEB站点管理向导,分别为公司和三个部门建立四个WEB站点,四者最大的不同是使用了不同的
TCP端口:
公司站点 A部门站点 B部门站点 C部门站点
IP地址 192.168.1.10
TCP端口 80 8086 8087 8088
权限 读取和运行脚本
站点主目录 d:\web\com d:\web\a d:\web\b d:\web\c
这样,客户端就可以通过:
访问公司站点。
访问A部门站点
访问B部门站点
访问C部门站点
这种方法建立的WEB站点使用非默认端口的网站具有相对的隐蔽性,但此方法维护多个站点要求客户
在端口号前键入实际的数字 IP 地址。不能使用主机名和“友好名称”。
方法二、主机头名法
由于各种原因,我们有时候需要在一个IP地址上建立多个web站点,在IIS5中,我们可能通过简单的
设置达到这个目标。
在IIS中,每个 Web 站点都具有唯一的、由三个部分组成的标识,用来接收和响应请求:
(1) IP地址
(2)端口号
(3)主机头名。
在IIS中,在一个IP地址上建立多个独立的web站点,通常有两种方法,本文以以例子的形式介绍主
机头法,使用这种方法可以建立起专业的虚拟主机。
环境:假设深圳市某某公司用一台win2000服务器提供虚拟主机服务,地址是192.168.1.10。在这台
服务器已经安装了Internet服务即IIS 5。
现在公司要求网络管理员在服务器上使用一个IP为ABCD四个公司建立独立的网站,每个网站拥有自己独
立的域名。四家网站域名分别为: , , 和 。
通过使用主机头,站点只需一个 IP 地址即可维护多个站点。客户可以使用不同的域名访问各自的站点,
根本感觉不到这些站点在同一主机上。
具体操作如下:
1、在win2000服务器为四家公司建立文件夹,做为WEB站点主目录。如下: WEB站点主目录 WEB站点
d:\web\a A公司网站
d:\web\b B公司网站
d:\web\c C公司网站
d:\web\d D公司网站
2、使用WEB站点管理向导,分别四家公司建立独立的WEB站点,四者最大的不同是使用了不同的主机头名:
A公司站点 B公司站点 C公司站点 D公司站点
IP地址 192.168.1.10
TCP端口 80
权限 读取和运行脚本
主机头名
站点主目录 d:\web\a d:\web\b d:\web\c d:\web\d
在DNS中将这四个域名注册上,均指向同一地址:192.168.1.10。这样,客户端就可以通过:
访问A公司站点。
访问B公司站点。
访问C公司站点。
访问D公司站点。
3、每个站点的主机头名可以在WEB站点建立向导中设置,它与站点的IP地址,TCP端口在同一屏上。也可能 (DNS)
通过该站点-"属性"-"WEB站点"标签-选IP地址右边的"高级"按钮,跳出"高级多WEB站点配置"进行配置。
这种方法建立可以建立专业的虚拟主机,几乎所有使用IIS提供虚拟主机的公司都这样做的。
如何在一台服务器上实现多个Web站点
方法/步骤
1
现在我们有一台Windows2000Server服务器,在这台服务器上要建立默认站点“a”和新增站点“b”(建立更多网站原理相同),下面我们分别探讨三种不同的实现途径。
2
途径一 TCP端口法
我们知道Web站点的默认端口一般为80,如果改变这一端口,就能实现在同一服务器上新增站点的目的。
假
设服务器名为Master,安装有一块网卡,IP地址为192.168.0.1,那么安装IIS后会自动生成一个默认Web站点,我们就将其作为
“教师之家”网站。点击“开始”→“程序”→“管理工具”→“Internet服务管理器”,出现“Internet信息服务”窗口(请见附图)。右键单
击“默认Web站点”,选择“属性”进行设置。在“Web站点标识”中,将说明改为“a”,IP地址选择192.168.0.1,TCP端口保持默认的
80不变。将制作好的网站文件拷贝到默认目录中,“a”的设置就算完成了。
下面我们来增加“b”站点。在“Internet信息服务”窗口
中单击选定主机名Master,然后选择“操作”→“新建”→“Web站点
”,出现“Web站点创建向导”窗口,依次点击下一步,将站点说明定为“b”,IP地址选择192.168.0.1,在TCP端口栏一定要将默认的
80修改为其他值,如1050,选定主目录,设置好访问权限,“学生天地”站点的设置也完成了。
测试一下效果,在浏览器地址栏中输入
http://192.168.0.1(默认的端口号80可以省略),回车,我们将访问到“教师之家”站点。输入http:
//192.168.0.1:1050(注意IP地址后的端口号一定不能少),则会出现“学生天地”站点。遗憾的是,采用这种方式设置的多站点无法与
DNS结合使用。
一般情况下,一块网卡只设置了一个IP地址。如果我们为这块网卡绑定多个IP地址,每个IP地址对应一个Web站点,那么同样可以实现“一机多站”的目的。
点
击“开始”→“设置”→“控制面板”,双击“网络和拨号连接”,右键单击“本地连接”,选择“属性”调出“本地连接属性”面板,选择
“Internet协议(TCP/IP)”,点击“属性”调出“Internet协议(TCP/IP)属性”面板,点击下方的“高级”调出“高级TCP
/IP设置”面板。在IP地址栏下面列出了网卡已设定的IP地址和子网掩码,点击添加按钮,在弹出的对话框中填上新的IP地址(如
192.168.0.2,注意不能与其他机器的IP地址重复),子网掩码与原有的相同(如255.255.255.0)。然后依次确定,就完成了多个IP
地址的绑定。
按照上例中的做法设置默认站点“a”,然后我们来增加“b”站点。在“Internet信息服务”窗口中单击选定主机名
Master,选择“操作→“新建”→“Web站点”,出现“Web站点创建向导”窗口,依次点击下一步,将站点说明定为“学生天地”,IP地址选择
192.168.0.2(注意不能与默认站点的IP地址相同),TCP端口保持默认的80不变,选定主目录,设置好访问权限,“学生天地”站点的设置完
成。
分别在浏览器地址栏中输入http://192.168.0.1和http://192.168.0.2,测试一下效果
技术文!分享下如何将多个站点建立在同一个服务器上!!
1、只有一个固定IP;
2、在同一台服务器上设定多个站点;且每个站点均使用这一个IP地址;
3、所有站点均用80端口访问。
如果是这样的话,请在你的IIS里设置主机头。
打开IIS管理器,选择你的第一个站点,点击“WEB
站点标识”后面的“高级”按钮,在出现的对话框中,上面有一个“主机头名”就是这个了。如果你的域名是
的话,就把主机头名设为
,注意不要带“
http://”。
照此方法设置另外的站点即可。
你可以访问一下
和
,这就是在同一服务器上的不同站点。IP也一样。
如何在Nginx服务器中设置多个站点
这里以配置2个站点(2个域名)为例,n 个站点可以相应增加调整,假设:
IP地址: *.*.*.*
域名1 example1.com 放在 /www/example1
域名2 example2.com 放在 /www/example2
配置 nginx virtual hosting 的基本思路和步骤如下:
把2个站点 example1.com, example2.com 放到 nginx 可以访问的目录 /www/
给每个站点分别创建一个 nginx 配置文件 example1.com.conf,example2.com.conf, 并把配置文件放到 /etc/nginx/vhosts/
然后在 /etc/nginx.conf 里面加一句 include 把步骤2创建的配置文件全部包含进来(用 * 号)
重启 nginx
具体过程
下面是具体的配置过程:
1、在 /etc/nginx 下创建 vhosts 目录
mkdir /etc/nginx/vhosts
2、在 /etc/nginx/vhosts/ 里创建一个名字为 example1.com.conf 的文件,把以下内容拷进去
server {
listen 80;
server_name example1.com www. example1.com;
access_log /www/access_ example1.log main;
location / {
root /www/example1.com;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /www/example1.com/$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
3、在 /etc/nginx/vhosts/ 里创建一个名字为 example2.com.conf 的文件,把以下内容拷进去
server {
listen 80;
server_name example2.com www. example2.com;
access_log /www/access_ example1.log main;
location / {
root /www/example2.com;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /www/example2.com/$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
4、打开 /etc/nginix.conf 文件,在相应位置加入 include 把以上2个文件包含进来
user nginx;
worker_processes 1;
# main server error log
error_log /var/log/nginx/error.log ;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
# main server config
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] $request '
'"$status" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
gzip on;
server {
listen 80;
server_name _;
access_log /var/log/nginx/access.log main;
server_name_in_redirect off;
location / {
root /usr/share/nginx/html;
index index.html;
}
}
# 包含所有的虚拟主机的配置文件
include /usr/local/etc/nginx/vhosts/*;
}
5、重启 Nginx
/etc/init.d/nginx restart
如何在一台服务器上运行多个网站
Windows 2003中IIS 6主机头功能:
利用Windows 2003中的IIS 6组件实现让多个不同的网站都用80端口对外发布,而访问时直接输入地址即可不用加任何虚拟目录路径也不需要修改默认端口号。这就是IIS 6中的主机头功能。通过一个案例详细介绍 配置windows2003服务器IIS主机头发布多个站点:实现的功能就是在同一台服务器上发布两个不同的网站,而这两个网站都使用80端口,而且访问时不通过虚拟目录完成。
建立A站点:分别建立两个站点。
第一步:在Windows 2003中启动IIS组件,然后在网站选项上点鼠标右键选择“新建”-“网站”。
第二步:在网站描述处填写“softer站点”来区分不同网站名称,点“下一步”按钮继续。
第三步:接下来就是主机头设置的关键了,网站IP地址处信息保持默认的“全部未分配”即可,端口是默认的80,最下面的“此网站的主机头”输入一个域名,当然如果真的要对internet发布自己的网站,这个域名是要输入真实的已经注册的已经做好网站备案的。
第四步:选择网站发布的主目录,通过“浏览”按钮定位站点文件夹。
第五步:设置网站访问权限,这个就要根据站点的特征决定。
至此就完成了第一个站点的创建和发布工作。
按之前的步骤建立B站点:网站描述填写“其他描述内容”以示区别。设置第二个网站的主机头信息,填写区别于A站点的url地址作为此站点的主机头,其他保持默认。这个站点和之前的第一个站点都使用了80端口进行发布。
完成第二个网站的发布操作之后即可实现两个站点都使用了80端口对外发布。
一台服务器支持多个域名和站点
最近数次遇到这种情况:硬件资源有限,但有些开发配置要求比较严苛(如在微信公众号进行接口配置或安全域名配置),要求80端口甚至顶级域名。但服务器的80端口早就被之前的已经上线的应用占掉了。
因此做了一些尝试,最终解决了访问问题。
域名都解析到该服务器的IP下,通过Nginx区分主机头,从而决定请求访问到哪个应用。
相当于门卫将不同的来者领到不同的房间。
最终通过对Nginx的配置实现了需求。
目前用着没啥问题,但 优劣还待考证。
指向第二个应用的本机地址。
附上原有的第一个应用的upstream。
注意本例中,要新添加的解析二级域mysite.mydomain.com
再给conf添加如下1个server:
添加后,有2个server,一个用来匹配 ,一个用来匹配 mysite.mydomain.com 。
附上原有的另一个server:
upstream和server都在conf中加好后,使用如下命令测试一下配置文件是否可用。以我自己的为例:
通过后,再重启nginx。
先检查一下原有的域名访问是否一如既往。
注意测试前可清除一下DNS缓存。
如果是Mac系统,使用如下命令:
在域名商(域名在哪家买的就去哪家)处,增加新域名(二级域名)的A记录解析到该IP。
一般的服务器,解析后即可生效,不需要在空间商处做额外的动作。
但如果域名商为西部数据且空间是国内要备案的那种空间,则需要:
清除一下DNS缓存。
如果是Mac系统,使用如下命令:
然后使用nslookup看一下你的两个域名是否已经指向了你这台服务器的IP。
之后就通过不同域名访问,看看是否导向了不同的应用即可。
~ END ~
受益于如下这些文章:
服务器多个站点的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于一个服务器可以放多个网站吗、服务器多个站点的信息别忘了在本站进行查找喔。
本文由admin于2022-12-21发表在靑年PHP官网,如有疑问,请联系我们。
本文链接:https://qnphp.com/post/218593.html