特网建站专注网站建设行业优质供应商,并且包含互联网基础服务(域名、云服务器、企业邮箱、网络营销等)应用服务。

微信咨询

zhstwkj

您敢托付 绝不辜负

邮件

mail@56dr.com

服务器、网站、业务系统保驾护航

合作企业用户

12500+

运维团队

10+

手把手教你使用Apache搭建网站从零开始的完整指南

2026-01-09 589 网站建设

    在当今互联网高度发达的时代,搭建一个属于自己的网站早已不再是遥不可及的技术难题,无论是用于个人博客、企业官网展示,还是作为开发测试环境,使用 Apache HTTP Server(简称 Apache)来部署网站都是一种经典且稳定的选择,作为全球最流行的开源 Web 服务器软件之一,Apache 凭借其免费、跨平台、高度可配置以及强大的社区支持等优势,长期受到开发者和系统管理员的青睐。


    准备工作:选择操作系统与网络环境

    要搭建 Apache 网站服务器,首先需要一台运行 Linux 或 Windows 的设备——可以是本地计算机,也可以是云服务器,本文以 Ubuntu 20.04/22.04 LTS 为例进行说明,因其稳定性高、包管理完善,在服务器领域广泛应用。

    确保你的系统满足以下条件:

    • 已连接互联网;
    • 具备 sudo 权限(即管理员权限);
    • 可通过终端执行命令操作。

    打开终端后,第一步是更新系统软件包列表,确保后续安装的组件为最新版本:

    sudo apt update && sudo apt upgrade -y

    该命令会同步软件源信息并升级所有已安装的软件包,提升系统的安全性与兼容性。


    安装 Apache Web 服务器

    Ubuntu 提供了 APT 包管理工具,使得 Apache 的安装极为简便,只需一条命令即可完成安装:

    sudo apt install apache2 -y

    安装完成后,启动 Apache 服务,并设置为开机自启,以保证服务器重启后服务仍能正常运行:

    sudo systemctl start apache2
    sudo systemctl enable apache2

    接下来检查服务状态是否正常运行:

    sudo systemctl status apache2

    若输出中显示 active (running),则表示 Apache 已成功启动。

    打开任意浏览器,在地址栏输入服务器的 IP 地址或 http://localhost,你应该能看到 Apache 默认的欢迎页面:“It works!” —— 这标志着 Web 服务器已成功就绪。


    网站文件存放路径与权限管理

    Apache 默认的网站根目录位于 /var/www/html/,你可以将网页文件(如 index.html)放置于此目录下,供外部访问。

    现在我们创建一个简单的首页文件:

    sudo nano /var/www/html/index.html

    输入以下 HTML 内容:

    <!DOCTYPE html>
    <html lang="zh">
    <head>
        <meta charset="UTF-8">我的第一个Apache网站</title>
    </head>
    <body>
        <h1>欢迎访问我的网站!</h1>
        <p>这是使用 Apache 搭建的一个简单静态网站。</p>
    </body>
    </html>

    保存并退出编辑器(Nano 中按 Ctrl+O 保存,Ctrl+X 退出),然后刷新浏览器页面,即可看到自定义内容已生效。

    ⚠️ 注意事项:为了确保 Apache 进程能够正确读取和提供这些文件,必须合理配置文件权限。

    推荐执行以下命令,将目录所有权赋予 Apache 运行用户 www-data,并设置合适的访问权限:

    sudo chown -R www-data:www-data /var/www/html/
    sudo chmod -R 755 /var/www/html/

    这一步不仅能避免因权限不足导致的“403 Forbidden”错误,也为后续多站点部署打下基础。


    配置虚拟主机实现多站点托管

    如果你希望在同一台服务器上托管多个独立网站(example.comblog.example.com),可以利用 Apache 的 虚拟主机(Virtual Host) 功能,实现资源高效复用。

    创建站点目录结构

    为每个域名创建独立的网站目录:

    sudo mkdir -p /var/www/example.com/html
    sudo mkdir -p /var/www/blog.example.com/html

    并在各自目录中添加测试页面:

    echo "<h1>主站:example.com</h1>" | sudo tee /var/www/example.com/html/index.html
    echo "<h1>博客站:blog.example.com</h1>" | sudo tee /var/www/blog.example.com/html/index.html
    配置虚拟主机文件

    example.com 创建配置文件:

    sudo nano /etc/apache2/sites-available/example.com.conf
    <VirtualHost *:80>
        ServerName example.com
        ServerAlias www.example.com
        DocumentRoot /var/www/example.com/html
        ErrorLog ${APACHE_LOG_DIR}/example_error.log
        CustomLog ${APACHE_LOG_DIR}/example_access.log combined
        # 启用目录索引(可选)
        <Directory /var/www/example.com/html>
            Options Indexes FollowSymLinks
            AllowOverride None
            Require all granted
        </Directory>
    </VirtualHost>

    同样地,为 blog.example.com 创建对应的配置文件:

    sudo nano /etc/apache2/sites-available/blog.example.com.conf

    类似,仅需修改 ServerNameDocumentRoot 路径。

    启用站点并重载配置

    使用 Apache 提供的工具启用这两个站点:

    sudo a2ensite example.com.conf
    sudo a2ensite blog.example.com.conf

    若不再需要默认站点,可将其禁用:

    sudo a2dissite 000-default.conf

    最后重新加载 Apache 配置,使更改生效:

    sudo systemctl reload apache2
    本地测试域名解析

    由于尚未注册真实域名,可在本机 hosts 文件中模拟 DNS 解析,用于测试。

    • Windows 用户编辑:
      C:\Windows\System32\drivers\etc\hosts
    • Linux / macOS 用户编辑:
      /etc/hosts

    添加以下两行记录:

    0.0.1 example.com
    127.0.0.1 blog.example.com

    保存后,即可在浏览器中通过 http://example.comhttp://blog.example.com 访问不同站点,验证虚拟主机配置是否成功。


    安全与性能优化建议

    尽管 Apache 稳定可靠,但在实际生产环境中仍需关注安全性与性能表现,以下是几项关键优化措施:

    1. 启用防火墙保护

      使用 UFW(Uncomplicated Firewall)开放必要的端口:

      sudo ufw allow 'Apache Full'  # 开放 HTTP(80) 和 HTTPS(443)
      sudo ufw enable
    2. 部署 SSL/TLS 加密(HTTPS)

      推荐使用 Let's Encrypt 提供的免费证书,结合 Certbot 工具一键启用 HTTPS:

      sudo apt install certbot python3-certbot-apache -y
      sudo certbot --apache -d example.com -d www.example.com

      此后,网站将以加密方式传输数据,增强用户隐私保护。

    3. 定期更新 Apache 与系统组件

      定期运行系统更新,及时修补已知漏洞:

      sudo apt update && sudo apt upgrade -y
    4. 关闭不必要的模块

      Apache 默认启用了多个功能模块,但并非全部都需要,可通过以下命令查看已启用模块:

      apache2ctl -M

      使用 a2dismod 禁用无用模块(如 autoindexstatus 等暴露信息的模块):

      sudo a2dismod autoindex
      sudo systemctl reload apache2
    5. 配置日志轮转机制

      Apache 自动生成访问日志和错误日志,长时间运行可能导致磁盘占用过高,Ubuntu 默认使用 logrotate 自动处理日志切割,但仍建议检查 /etc/logrotate.d/apache2 是否启用并合理配置。

    6. 隐藏服务器版本信息(可选)

      修改 Apache 配置以隐藏服务器版本号,减少被针对性攻击的风险:

      编辑主配置文件:

      sudo nano /etc/apache2/conf-available/security.conf

      修改以下两项:

      ServerTokens Prod
      ServerSignature Off

      然后启用配置并重载服务:

      sudo a2enconf security
      sudo systemctl reload apache2

    常见问题排查指南
    问题现象 可能原因 解决方案
    无法访问网站 防火墙拦截、服务未运行、端口未监听 检查 ufw 规则;运行 `sudo



相关模板

嘿!我是企业微信客服!