【开发小记】在apache服务器上部署vue项目

一、服务器安装apache

我的服务器是CentOS7的环境

直接用yum安装
首先查看相关安装包

yum list httpd

接着选择一个安装就行

yum install httpd.x86_64

我的安装情况如下
在这里插入图片描述
安装过程有一个选择,y就成;安装成功是这样的(中间就省略了)
在这里插入图片描述

二、apache服务相关操作

开启、关闭、重启

systemctl start httpd.service #启动

systemctl stop httpd.service #停止

systemctl restart httpd.service #重启

设置开机启动/关闭

systemctl enable httpd.service #开机启动

systemctl disable httpd.service #开机不启动

检查httpd相关状态

systemctl status httpd.service

启动apache服务后,我们输入安装了apache的服务器ip到浏览器就可以看到apache的默认页面了

三、更改apache相关配置

我们看到的默认页面是放在/var/www/html目录中,我们可以将保存目录更改到自己想要的地方。例如将保存网站数据的目录修改为/home/wwwroot目录

1.建立网站数据保存目录,并开创一个例子作为首页
在这里插入图片描述
2.打开httpd服务器的主配置文件,将约119行用于定义网站保存路径的参数DocumentRoot和约124行这样用于定义目录权限参数的Directory修改如下
输入vim /etc/httpd/conf/httpd.conf
进行修改如下
在这里插入图片描述
3.重启httpd服务即可见修改成功

systemctl restart httpd.service #重启

四、配置打包vue项目

最后我想将整个项目放到/home/wwwroot/ebackup文件夹下,于是配置vue如下

1.修改config下的index.js如下
在这里插入图片描述
主要就是assetsPublicPath:'/ebackup/'

2.修改router下的index.js如下
在这里插入图片描述
主要就是base: '/ebackup',

3.修改以上几处后打包

npm run build

打包成功后项目的dist文件夹下会生成如下文件
在这里插入图片描述
将它们上传到服务器/home/wwwroot/ebackup下
在这里插入图片描述
这时再访问服务器ip/ebakcup/index.html即可查看到我们自己的项目了

五、解决刷新后显示404问题

上面的步骤进行完毕后,虽然可以访问,但是刷新或者用url栏访问某个子页面就会出现404,这是由于vue路由的mode是history模式。
修改apache的配置文件httpd.conf

vim /etc/httpd/conf/httpd.conf

修改如下
在这里插入图片描述
即如下代码,其中ebackup即我的项目存放的目录

AllowOverride all
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.html$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /ebackup/index.html [L]

然后再次重启apache服务

systemctl restart httpd.service #重启

到此为止,vue项目部署完毕。

如果遇到没有权限访问,可以用下面这句,赋予相关权限,使之能够访问我们新建的/home/wwwroot/ebackup文件夹下的内容

chmod 777 -Rf /home/wwwroot/ebackup

  • 4
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在 CentOS 9 上配置 Apache 2 并部署 Vue 项目,您需要按照以下步骤进行操作: 1. 安装 Apache 2: ``` sudo dnf install httpd ``` 2. 启动 Apache 服务并设置开机自启动: ``` sudo systemctl start httpd sudo systemctl enable httpd ``` 3. 配置防火墙允许 HTTP 流量通过: ``` sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --reload ``` 4. 在 Apache 配置中创建一个虚拟主机文件来指向您的 Vue 项目。假设您的项目位于 `/var/www/html/my-vue-app` 目录下,创建一个名为 `my-vue-app.conf` 的虚拟主机配置文件: ``` sudo nano /etc/httpd/conf.d/my-vue-app.conf ``` 5. 在 `my-vue-app.conf` 文件中添加以下内容: ```apache <VirtualHost *:80> ServerAdmin admin@example.com DocumentRoot "/var/www/html/my-vue-app/dist" ServerName your-domain.com <Directory "/var/www/html/my-vue-app/dist"> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </Directory> ErrorLog /var/log/httpd/my-vue-app-error.log CustomLog /var/log/httpd/my-vue-app-access.log combined </VirtualHost> ``` 确保将 `your-domain.com` 替换为您的域名或服务器 IP 地址。 6. 保存并关闭文件。 7. 重新加载 Apache 配置: ``` sudo systemctl reload httpd ``` 8. 现在,您的 Vue 项目应该已经部署Apache 2 上了。您可以通过访问服务器的 IP 地址或域名来查看您的 Vue 应用程序。 请注意,以上步骤假设您的 Vue 项目已经构建并生成了静态文件,将这些文件放在 `/var/www/html/my-vue-app/dist` 目录下。如果您的项目尚未构建,请先进行构建,然后将生成的文件放置在适当的目录中。 希望这可以帮助到您!如有任何问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值