配置 Ubuntu上的 HTTP 服务器(Apache)

前言

如果文件放在VM2上,想在VM1上进行访问,就可以在VM2配置HTTP 服务器。最后在VM1的网页访问VM2的文件。

1.安装 Apache HTTP 服务器:

复制代码
sudo apt update
sudo apt install apache2

2.确保 Apache 已启动并设置为开机启动:

复制代码
sudo systemctl start apache2
sudo systemctl enable apache2

3.创建一个目录用于共享文件:

假设我们想要共享 /home/kg/测试目录

复制代码
sudo mkdir -p /home/kg/测试目录
​
# 确保 /home 目录具有执行权限
sudo chmod o+x /home
​
# 确保 /home/kg 目录具有执行权限
sudo chmod o+x /home/kg
​
# 确保 /home/kg/测试目录 目录具有读取和执行权限
sudo chmod -R 755 /home/kg/测试目录
​

4. 更新配置文件

确保Apache配置文件 /etc/apache2/sites-available/000-default.conf 正确配置。下面是一个示例配置:

复制代码
<VirtualHost *:80>
    # 其他配置...
    
    <Directory /home/kg/测试目录>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>
​
    Alias /测试目录 /home/kg/测试目录
</VirtualHost>

5. 确认Apache用户和组

确保Apache用户和组是 www-data(大多数情况下是这个用户,但在某些系统上可能不同)。

复制代码
# 确认Apache的用户和组
ps aux | grep apache2

在某些系统上,Apache的用户可能是 apache。根据你的实际情况,修改权限命令中的用户和组。

6.重新启动Apache

应用更改后,重新启动Apache服务:

复制代码
sudo systemctl restart apache2

7.如果出错

检查Apache错误日志

再次检查Apache错误日志,确保没有其他权限相关的问题:

复制代码
sudo tail -f /var/log/apache2/error.log

确保防火墙允许HTTP流量

确保防火墙设置允许HTTP流量:

复制代码
sudo ufw allow 'Apache Full'

最终访问共享目录

在VM1浏览器中访问 http://192.168.145.138/测试目录,你应该能够看到共享目录的内容。如果仍然遇到问题,请检查错误日志并分享具体错误信息,以便进一步诊断问题。

相关推荐
虎头金猫5 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
-梅5 天前
linux(8) 软硬链接
linux·运维·服务器
Wang's Blog5 天前
Java 项目实战: 外卖平台-文件下载与ServletOutputStream回写浏览器
服务器·项目开发
琥珀色糖5 天前
SimlpeHttp
linux·服务器
XUEYUAN52125 天前
ASN 自治系统号风控:平台如何通过 IP 所属自治域批量识别代理流量
python·网络协议·http·网络安全·socks5
第十人i5 天前
Linux 日志管理系统:journald 配置与优化
linux·服务器
ITxiaobing20235 天前
IP 定位服务选型指南:从准确率到工程落地的技术考察
linux·服务器·网络
wuyk5555 天前
【Socket 进阶之路】第 9 章 Linux 网络服务量产稳定性优化|心跳保活、TIME_WAIT、SO_LINGER、内存池、断线重连、完整异常防护框架
linux·服务器·开发语言·网络·物联网
Julien20045 天前
Docker 容器存储原理(一)
linux·运维·服务器·ssh·学习方法
zhangrelay5 天前
《机器人控制器设计与编程》课程习题资料-2026
linux·笔记·学习·ubuntu