温馨提示×

如何Ubuntu用Apache2

小樊
47
2026-10-11 03:24:38
栏目: 智能运维

下面给你一份在 Ubuntu 上使用 Apache2 的简明实用指南,从安装到常见用法,适合新手到日常运维。


一、安装 Apache2

sudo apt update
sudo apt install apache2

安装完成后,Apache 会自动启动。

查看状态:

systemctl status apache2

启动 / 停止 / 重启:

sudo systemctl start apache2
sudo systemctl stop apache2
sudo systemctl restart apache2

开机自启:

sudo systemctl enable apache2

二、测试 Apache 是否正常工作

浏览器访问:

http://localhost

或服务器 IP:

http://你的服务器IP

看到 Apache2 Ubuntu Default Page 即成功。


三、网站目录结构

默认网站根目录:

/var/www/html

默认首页文件:

/var/www/html/index.html

你可以直接修改:

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

四、配置虚拟主机(多网站)

1. 创建网站目录

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

2. 创建测试页面

echo "<h1>Example.com</h1>" | sudo tee /var/www/example.com/public_html/index.html

3. 创建虚拟主机配置

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

内容示例:

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/example.com/public_html

    <Directory /var/www/example.com/public_html>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

4. 启用站点

sudo a2ensite example.com.conf
sudo a2dissite 000-default.conf   # 可选:关闭默认站点

5. 重新加载 Apache

sudo systemctl reload apache2

五、常用模块

启用模块(如 rewrite):

sudo a2enmod rewrite
sudo systemctl restart apache2

常见模块:

  • rewrite:URL 重写
  • ssl:HTTPS
  • headers:HTTP 头

六、配置 HTTPS(Let’s Encrypt)

sudo apt install certbot python3-certbot-apache
sudo certbot --apache

自动续期测试:

sudo certbot renew --dry-run

七、防火墙(如有 UFW)

sudo ufw allow 'Apache Full'

八、日志位置

  • 访问日志:/var/log/apache2/access.log
  • 错误日志:/var/log/apache2/error.log

查看实时日志:

tail -f /var/log/apache2/error.log

九、常见排错

  1. 端口被占用
sudo netstat -tulnp | grep :80
  1. 权限问题
sudo chown -R www-data:www-data /var/www/example.com
  1. 配置错误
sudo apache2ctl configtest

如果你有具体需求(比如 PHP 网站 / WordPress / 反向代理 / 本地开发),可以告诉我,我可以给你针对性配置。

0 踩