• Centos7下配置Apache的虚拟主机


    一、虚拟主机

    虚拟主机是Apache提供的一个功能,通过虚拟主机拉雅在一台服务器上部署多个网站。虽然服务器的IP地址是相同的,但用户当用户使用不同的域名访问时,访问到的是不同的网站。

    下面讲解Apache虚拟主机配置,当然,前提是你的CentOS已经安装并配置好了Apache服务器。

    二、搭建虚拟主机

    1.创建目录结构:

    首先,我们需要创建一个目录结构,以保存网站数据,为访客提供服务。我们的文档根目录将被设置为在各个 /var/www/ 目录中,我们将这里为我们的每个虚拟主机创建一个目录。

    在每个虚拟主机的目录中,我们将创建一个 public_html 用于存放实际文件。我们可以使用如下命令创建目录:

    sudo mkdir -p /var/www/example.com/public_html

    2.授予权限:

    现在我们有了文件目录结构,但是它们是由 root 用户所拥有的,如果我们希望普通用户能在我们的网页目录修改文件,我们可以改变文件的权限

    sudo chown -R $username:$usergroup /var/www/example.com/public_html

    此外,还应修改权限以确保允许对一般Web目录及其中的所有文件和文件夹进行访问,以便正确提供页面。

    sudo chmod -R 755 /var/www

    3.为虚拟主机创建网站主页:

    我们只是要作出网站主页 index.html 用以确保虚拟主机正确运行,创建一个新的 index.html 文件

    vim /var/www/example.com/public_html/index.html

    然后写入代码,这里我们只创建一个简单的页面:

    <html>
    <head>
    <title>Welcome to example.com ! </title>
    </head>
    <body>
    <h1>Success ! The example.com virtual host is working !</h1>
    </body>
    <html>

    保存并关闭文件。

    4. 创建新的虚拟主机文件:

    虚拟主机文件是指定我们单独站点的配置,并指定 Apache Web 服务器如何响应各种域请求。

    首先,我们将创建虚拟主机的存储目录,以及告知 Apache 虚拟主机准备好向访问者提供的目录。我们将创建两个目录,其中 sites-available 目录将保存我们所有的虚拟主机文件,而 sites-enabled 目录将举行符号链接。我们可以通过如下 bash 命令创建这两个目录:

    sudo mkdir /etc/httpd/sites-available
    sudo mkdir /etc/httpd/sites-enable

    然后,我们要 Apache 查找虚拟主机 sites-enable 目录,为实现这一点,我们将编辑Apache的主配置文件 /etc/httpd/conf/httpd.conf 在文件的末尾添加:

    IncludeOptional sites-enable/*.conf

    接下来我们就可在存储目录中创建我们的拟主机文件了,使用root权限打开新文件:

    sudo vim /etc/httpd/sites-available/example.com.conf

    然后写入虚拟主机的配置:

    <VirtualHost *:80>    #监听端口为80
    ServerName www.example.com
    ServerAlias example.com
    DocumentRoot /var/www/example.com/pubilc_html
    ErrorLog /var/www/example.com/error.log
    CustomLog /var/www/example.com/requests.log combined
    </VirtualHost>

    5.启用新的虚拟主机:

    现在我们已经创建了虚拟主机文件,我们需要启用他们呢,以便Apache知道将它们提供给访问者。要做到这一点,我们可以创建一个符号链接在每个虚拟主机的sites-enable 目录:

    sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enable/example.com.conf

    完成后,重新启动Apache以使这些更改生效:

    sudo apachectl restart

    6.设置本地主机文件爱(可选):

    用于测试虚拟主机的功能,通过修改 /etc/hosts 文件,将所有对 www.example.com 的访问直接传递给我们:

    #server_ip_address example.com www.example.com
    127.0.0.1 example.com www.example.com

    然后测试我们的虚拟主机,在浏览器中键入 http://www.example.com 顺利的话就能打开我们的测试的主页文件。

  • 相关阅读:
    使用 Nginx 内置 $http_user_agent 来区分( 电脑 pc、手机 mobile、平板 pad )端的内容访问
    原创《开源一个用 vue 写的树层级组件 vue-ztree》
    原创《weex面向未来的架构》
    原创《如何用vue来轻松的驾驭 html5 webapp的页面体验》
    Pdf Convert Image 的解决方案
    原创《分享(Angular 和 Vue)按需加载的项目实践优化方案》
    .npmrc 实用小技巧
    使用Tampermonkey,实现Gitlab禁用自我Merge的功能
    vue 之 render 函数不能渲染非全局自定义函数-方案
    反射、注解和动态代理
  • 原文地址:https://www.cnblogs.com/jxc321/p/8490446.html
Copyright © 2020-2023  润新知