ubuntu:在ubuntu系统上使用apache2服务器部署多个vue项目

在Ubuntu系统上使用Apache2服务器部署多个Vue.js项目,你可以按照以下步骤进行操作:

1. 安装 Apache2

如果你的系统上还没有安装Apache2,可以使用以下命令安装:

bash 复制代码
sudo apt update
sudo apt install apache2

2. 配置虚拟主机

要部署多个Vue.js项目,最好为每个项目配置一个单独的虚拟主机。这样,每个项目可以具有独立的域名或子域名,并且可以分别配置。

首先,创建一个虚拟主机配置文件。假设你有两个项目,分别是"project1"和"project2",你可以执行以下命令:

bash 复制代码
sudo nano /etc/apache2/sites-available/project1.conf

然后,在编辑器中添加以下配置(将域名和文件路径替换为实际值):

bash 复制代码
<VirtualHost *:80>
    ServerAdmin webmaster@project1.com
    ServerName project1.com

    DocumentRoot /var/www/project1/dist   # 项目1的Vue.js打包后的目录路径

    <Directory /var/www/project1/dist>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

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

保存并关闭文件。然后创建第二个项目的虚拟主机配置文件:

bash 复制代码
sudo nano /etc/apache2/sites-available/project2.conf

然后添加以下类似的配置:

bash 复制代码
 
<VirtualHost *:80>
    ServerAdmin webmaster@project2.com
    ServerName project2.com

    DocumentRoot /var/www/project2/dist   # 项目2的Vue.js打包后的目录路径

    <Directory /var/www/project2/dist>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

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

保存并关闭文件。

3. 启用虚拟主机

接下来,启用这两个虚拟主机配置文件:

bash 复制代码
 
sudo a2ensite project1.conf
sudo a2ensite project2.conf

4. 重启 Apache2 服务器

bash 复制代码
sudo systemctl restart apache2

5. 设置域名解析

确保你的域名已经解析到你的服务器IP地址。你可以在DNS管理面板上配置域名解析,或者在本地 /etc/hosts 文件中添加条目来模拟域名解析,如:

bash 复制代码
sudo nano /etc/hosts

在文件中添加以下行:

bash 复制代码
127.0.0.1 project1.com
127.0.0.1 project2.com

保存并关闭文件。

6. 部署 Vue.js 项目

将每个Vue.js项目的打包文件(通常在dist目录下)上传到相应的目录(上面配置的DocumentRoot路径)。

7. 测试

现在,你可以在浏览器中访问 http://project1.com 和 http://project2.com 来查看你的Vue.js项目是否成功部署。

这些步骤可以帮助你在Ubuntu系统上使用Apache2服务器部署多个Vue.js项目。每个项目都有自己独立的虚拟主机配置,以确保它们在同一服务器上能够独立运行。


8.备注

  • 如果没有域名,ServerName 可以换成 your_server_ip # 使用服务器的IP地址
相关推荐
_upupup6 小时前
Linux的调试工具——gdb/cgdb
linux·服务器
志尊宝7 小时前
Vue3 零基础每日笔记(073):keep-alive 页面缓存实战——列表页返回不丢状态
vue.js·笔记·缓存·#vue #前端 #前端开发·#javascript·#vue.js
Android系统攻城狮10 小时前
Linux Gstreamer深度解析之gst_audio_sink_get_type调用流程与实战(六十五)
linux·运维·服务器·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
大鹏的NLP博客11 小时前
WSL Ubuntu 26.04 升级与环境整理记录
linux·ubuntu·wsl
zyseo812 小时前
谷歌SEO 站内搜索优化实战:把站内搜索词变成关键词金矿
java·服务器·数据库
王大傻092812 小时前
堆叠注入(Stacked Queries Injection)详解:原理、利用与防御
服务器·网络·数据库·web安全·网络安全
bigcarp12 小时前
安卓模拟器MUMU+tcpdump抓包Socket协议流量
服务器·网络·tcpdump
是个西兰花12 小时前
TCP套接字编程实战:从服务器搭建到多进程处理
服务器·网络协议·tcp/ip
zhangzeyuaaa12 小时前
Ruby `require` 完全指南:从 `$LOAD_PATH` 到 `require_relative`
服务器·前端·ruby
忆挽篱笙歌13 小时前
gdb/cgdb
linux·ubuntu