在linux上架设Web服务器Apache(Ubuntu)

在这里插入图片描述

欢迎诸位来阅读在下的博文~
在这里,在下会不定期发表一些浅薄的知识和经验,望诸位能与在下多多交流,共同努力!
江山如画,客心如若,欢迎到访,一展风采

背景

Apache 是一个开源的网页服务器软件,它的正式名称为 Apache HTTP Server。它是世界上最流行的网页服务器软件之一,由 Apache 软件基金会(Apache Software Foundation)维护。Apache 服务器可以在多种操作系统上运行,包括 Unix、Linux、Windows、Mac OS X 等。
Apache HTTP Server 的主要特点包括:

  1. 开源性质:Apache 是免费的,并且其源代码可以被任何人查看、修改和分发。
  2. 稳定性与可靠性:Apache 服务器因其稳定性和可靠性而闻名,能够处理大量的网络请求。
  3. 可扩展性:Apache 支持多种模块,这些模块可以动态加载,以扩展服务器的功能。
  4. 配置灵活:Apache 的配置文件(通常是 httpd.conf)非常灵活,允许管理员根据需要调整服务器设置。
  5. 支持多种平台:Apache 可以在不同的操作系统平台上运行,具有很好的跨平台兼容性。
  6. 安全性:Apache 拥有良好的安全记录,并且经常更新以修复已知的安全漏洞。
  7. 社区支持:由于 Apache 的广泛使用,它拥有一个庞大的开发者社区,可以为用户提供支持和帮助。
    Apache 服务器通常用于以下场景:
  • 静态内容服务:提供 HTML、图片、CSS、JavaScript 等静态文件。
  • 动态内容服务:通过模块如 mod_php、mod_perl、mod_python 等,支持动态内容生成。
  • 代理服务器:作为反向代理,为后端服务器提供缓存和负载均衡功能。
  • 虚拟主机:在同一台服务器上支持多个网站,每个网站拥有独立的域名和配置。
    Apache HTTP Server 的配置和使用通常需要一定的技术知识,但它的灵活性和强大的功能使其成为许多网站管理员的首选网页服务器软件。

在 Ubuntu 系统上配置 Apache Web 服务器可以分为几个步骤,包括安装 Apache、配置虚拟主机、设置防火墙规则等。下面是详细的步骤:

1. 安装 Apache

首先,需要在系统上安装 Apache:

sudo apt update
sudo apt install apache2

2. 启动和检查 Apache 服务

安装完成后,启动 Apache 服务并设置为开机自启:

sudo systemctl start apache2
sudo systemctl enable apache2

你可以使用以下命令检查 Apache 服务的状态:

sudo systemctl status apache2

3. 配置防火墙

如果系统中使用了 ufw 防火墙,你需要允许 Apache 服务通过防火墙:

sudo ufw allow 'Apache'

检查防火墙状态,确认规则已经生效:

sudo ufw status

4. 配置虚拟主机

Apache 使用虚拟主机(Virtual Hosts)来管理多个网站。默认的虚拟主机配置文件位于 /etc/apache2/sites-available/000-default.conf
可以复制默认配置文件来创建新的虚拟主机:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf

编辑新的虚拟主机文件:

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

将文件内容修改为以下内容:

<VirtualHost *:80>
    ServerAdmin webmaster@example.com
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
  • ServerAdmin: 管理员邮箱。
  • ServerName: 你的域名。
  • ServerAlias: 其他别名,例如 www.example.com
  • DocumentRoot: 网站的根目录。

然后创建软链接:
在 /etc/apache2/sites-enabled/ 目录下,输入以下命令:

sudo ln -s ../sites-available/www.example.com.conf  www.example.com.conf

接下来,创建网站根目录:

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

设置目录权限:

sudo chown -R $USER:$USER /var/www/example.com
sudo chmod -R 755 /var/www

你可以在 DocumentRoot 目录下创建一个简单的 index.html 文件来测试:

echo '<h1>Hello, World!</h1>' | sudo tee /var/www/example.com/index.html

5. 启用虚拟主机并重启 Apache

启用新的虚拟主机:

sudo a2ensite example.com.conf

禁用默认虚拟主机(可选):

sudo a2dissite 000-default.conf

重启 Apache 服务使更改生效:

sudo systemctl reload apache2

6. 配置域名解析(可选)

如果你想通过域名访问本地服务器,可以在 /etc/hosts 文件中添加一条记录(仅用于本地测试):

sudo nano /etc/hosts

添加以下内容:

127.0.0.1    example.com www.example.com

如果你有自己的ip地址,那么可以按照上面的格式进行:
IP地址 域名

7. 设置 HTTPS(可选)

为了提高安全性,你可以配置 HTTPS。使用 Let's Encrypt 这样的免费证书服务可以轻松地为网站配置 HTTPS。
首先,安装 Certbot 和 Apache 插件:

sudo apt install certbot python3-certbot-apache

然后,运行以下命令为你的域名获取证书并自动配置 HTTPS:

sudo certbot --apache -d example.com -d www.example.com

8. 检查配置

你可以使用 Apache 自带的配置测试工具来检查是否有配置错误:

sudo apache2ctl configtest

如果配置正确,你会看到 Syntax OK 的提示。

9. 访问网站

现在,打开浏览器并访问 http://example.comhttps://example.com(如果配置了 HTTPS),你应该会看到刚才创建的 index.html 页面。
至此,Apache 在 Ubuntu 系统上的基本配置就完成了。

在这里插入图片描述
望诸位不忘三连支持一下~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值