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.comhttp://project2.com 来查看你的Vue.js项目是否成功部署。

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


8.备注

  • 如果没有域名,ServerName 可以换成 your_server_ip # 使用服务器的IP地址
相关推荐
神梦流7 分钟前
GE 引擎的内存优化终局:静态生命周期分析指导下的内存分配与复用策略
linux·运维·服务器
凡人叶枫9 分钟前
C++中输入、输出和文件操作详解(Linux实战版)| 从基础到项目落地,避坑指南
linux·服务器·c语言·开发语言·c++
Lsir10110_1 小时前
【Linux】进程信号(下半)
linux·运维·服务器
liuniu08181 小时前
VMware虚拟机安装ubuntu2022
ubuntu·ros
skywalk81631 小时前
unbound dns解析出现问题,寻求解决之道
运维·服务器·dns·unbound
酉鬼女又兒1 小时前
零基础入门Linux指南:每天一个Linux命令_pwd
linux·运维·服务器
云飞云共享云桌面1 小时前
高性能图形工作站的资源如何共享给10个SolidWorks研发设计用
linux·运维·服务器·前端·网络·数据库·人工智能
skywalk81631 小时前
走近科学:unbound dns域名服务器自己本地解析出现问题,寻求解决之道
运维·服务器·dns·unbound
choke2331 小时前
Python 基础语法精讲:数据类型、运算符与输入输出
java·linux·服务器
wqq63108551 小时前
Python基于Vue的实验室管理系统 django flask pycharm
vue.js·python·django