概述
虚拟主机是一种将一台物理服务器划分为多个逻辑主机的技术,每个逻辑主机都可以独立运行网站、应用等,在CentOS中,我们可以通过配置Nginx或Apache等Web服务器来实现基于IP、域名、端口的虚拟主机搭建,本文将详细介绍如何在CentOS中搭建基于IP、域名、端口的虚拟主机。
准备工作
1、安装EPEL源
EPEL(Extra Packages for Enterprise Linux)是CentOS的一个第三方软件源,提供了许多企业级软件包,安装EPEL源可以让我们使用更多的软件包来搭建虚拟主机。
sudo yum install epel-release
2、安装Nginx或Apache
在CentOS中,我们可以使用Nginx或Apache作为Web服务器来搭建虚拟主机,这里以Nginx为例进行演示。
sudo yum install nginx
3、启动并设置开机自启动Nginx
sudo systemctl start nginx sudo systemctl enable nginx
配置虚拟主机
1、创建虚拟主机配置文件目录
在Nginx的配置目录下创建一个名为“site”的文件夹,用于存放各个虚拟主机的配置文件。
sudo mkdir /etc/nginx/conf.d/site
2、创建虚拟主机配置文件
在“site”文件夹下创建一个名为“example1.com.conf”的文件,用于存放虚拟主机example1.com的配置,编辑该文件,添加以下内容:
server { listen 80; 监听80端口 server_name example1.com; 虚拟主机域名 root /var/www/example1.com; 网站根目录 index index.html index.htm; 默认首页文件名 auth_basic "Restricted"; 开启HTTP基本认证 auth_basic_user_file /etc/nginx/.htpasswd; HTTP基本认证用户信息文件路径 }
3、创建虚拟主机网站根目录
在“/var/www/example1.com”目录下创建一个名为“index.html”的文件,作为虚拟主机的首页,编辑该文件,添加以下内容:
<!DOCTYPE html> <html> <head> <title>Welcome to Example1.com!</title> </head> <body> <h1>Hello, Example1.com!</h1> </body> </html>
4、为虚拟主机配置SSL证书(可选)
如果需要为虚拟主机配置SSL证书,可以使用Let's Encrypt等工具生成免费的SSL证书,然后在Nginx配置文件中添加以下内容:
server { ... listen 443 ssl; 监听443端口(HTTPS) ssl_certificate /etc/nginx/ssl/example1.com.crt; SSL证书路径(PEM格式) ssl_certificate_key /etc/nginx/ssl/example1.com.key; SSL证书私钥路径(PEM格式) }
5、重启Nginx服务使配置生效
sudo systemctl restart nginx
测试虚拟主机是否搭建成功
在浏览器中输入虚拟主机的IP地址或域名,查看是否能正常访问到虚拟主机的首页,如果我们搭建的是example1.com的虚拟主机,可以在浏览器中输入http://example1.com或https://example1.com进行测试,如果能看到“Hello, Example1.com!”的页面,说明虚拟主机搭建成功。
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/197107.html