前端用vue来实现,后端用springboot来实现,web服务器则选用nginx。因为自己的网站涉及数据库,所以还需要安装数据库服务。
一、服务器
服务器方面使用的是阿里云的轻量应用服务器2核2GB内存、系统盘60GB、linux的版本是Red Hat的CentOS 7.6。网上有说法是7.6比较经典,并且CentOS 8.x版本年底会停止更新和维护,所以就选择了7.6版本。
二、Vue项目的打包
在要打包的vue项目所在的文件夹运行终端使用npm run build
,就会在文件夹下生成dist文件夹。这个命令会将vue项目的所有代码转换为css、js和html格式,以便能在大部分的浏览器上运行。只要将这个dist文件夹放到http服务器上就能够运行了。
三、springboot项目的打包
-
首先在pom.xml文件中导入SpringBoot的maven依赖:
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.6.2</version></plugin></plugins> </build>
- 使用
mvn package
命令将springboot项目打包,这个命令会在项目的target目录下生成一个jar包。使用idea写springboot项目的话,可以如图所示操作:
![<img src="C:\Users\dell\AppData\Roaming\Typora\typora-user-images\image-20220126161543634.png" alt="image-20220126161543634" style="zoom: 50%;" />](https://img-blog.csdnimg.cn/2262df62349d411ab051c47c95e155a1.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAa3Vyb2Rhc2Vuc2U=,size_18,color_FFFFFF,t_70,g_se,x_16)这是`package`后target文件夹中的内容,其中红框的jar文件就是这个springboot项目,因为它里面内置了tomcat的依赖包,所以只需要在终端执行`java -jar (你的sprigboot项目jar包的名字)`就能运行了。
四、linux上部署nginx
vue项目构建完成后的dist文件夹必须要放到一个web服务器上才能运行,所以这里使用nginx作为web服务器。nginx是一个高性能的web服务器,并且它支持反向代理、占有内存少、并发能力强,而且很轻量。无论是在windows上部署还是linux上部署都非常简易和方便。
-
访问nginx官网
https://nginx.org/en/
,在右边找到download
进入下载页面 -
下载页面提供三种nginx版本,Mainline version是指目前正在开发的开发版,Stable version是指最新稳定版,Legacy versions是指老版本的nginx。显然我们应该选择最新的稳定版本。
因为是运行在linux上,所以选择linux的版本,也即红框的版本。
-
下载完成后,我们得到的是
tar
文件,可以使用WinSCP
来访问阿里云的服务器,将nginx放到里面去。 -
接着我们可以用
Xshell 5
来访问阿里云服务器,cd
到你放nginx的tar包的文件夹,运行tar -xvf (你的nginx的tar包名字)
进行解压。 -
然后
cd /usr/local/swebserver/nginx/conf
去到放nginx配置文件的文件夹,执行vim nginx.conf
修改一下配置。其实如果求方便的话,我们可以用WinSCP
来进行这些操作。 -
打开
nginx.conf
文件后,找到http
块里面的server
块,如图所示: -
接下来修改一下server的内容(带
#
号的都是注解),按以下的内容修改就行了:server {listen 8080; # 这个是设置web服务器的端口号server_name 8.134.217.191; # 这个是设置web服务器的ip地址,这里要填写你服务器的ip地址root /dist;#charset koi8-r;#access_log logs/host.access.log main;location / {root /dist; # 这个是设置你dist文件夹的位置。我的dist文件夹因为放在了根目录下,所以就写成/disttry_files $uri $uri/ /index.html @router;index index.html index.htm;# 上面两个照抄,@router是为了引用下面的转发,因为vue中的路由并不是接口,而是网页跳转,所以需要特别写出。}location @router{rewrite ^.*$ /index.html last; # 这段的意思是将所有的路由请求重写到index.html中,将路由请求交给vue的路由进行处理。}#error_page 404 /404.html;# redirect server error pages to the static page /50x.html#error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}# proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ \.php$ {# proxy_pass http://127.0.0.1;#}# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000##location ~ \.php$ {# root html;# fastcgi_pass 127.0.0.1:9000;# fastcgi_index index.php;# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;# include fastcgi_params;#}# deny access to .htaccess files, if Apache's document root# concurs with nginx's one##location ~ /\.ht {# deny all;#}}
-
执行
/usr/local/swebserver/nginx/sbin/nginx
就打开nginx服务了。
五、linux上部署mysql
在部署运行springboot之前,还需要安装数据库服务才能让springboot的项目正常运行,因为我使用的是mysql,所以就部署mysql服务。
-
打开
https://dev.mysql.com/downloads/
,选择MySQL Yum Repository: -
因为我们linux的版本是CentOS 7.6,所以我们选择红框的版本:
-
点击下载,会跳转页面,我们选择No thanks, just start my download:
-
下载完成后,使用
WinSCP
将文件放到服务器上,接着在XShell 5
上执行yum localinstall mysql80-community-release-el7-5.noarch.rpm
,安装过程中如果需要确认的话就一路确认。 -
安装完毕后执行
yum install mysql-community-server
。 -
安装完毕,启动MySQL服务:
service mysqld start
。执行命令后,可以使用ps -ef | grep mysql
来查看mysql是否启动成功。 -
修改mysql的root密码。先执行
grep 'temporary password' /var/log/mysqld.log
查看临时密码;然后复制临时密码,登录mysql:mysql -uroot -p(临时密码)
;因为是mysql8.0,所以执行set global validate_password.policy=0;
和set global validate_password.length=1;
,此目的是降低密码的检验规则,方便修改密码。最后执行ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
就成功修改密码了。 -
修改密码后,刷新一下权限
flush privileges
。可以quit;
退出登录,再用新密码进行登录检验下新密码。
六、linux上安装jdk
-
打开https://www.oracle.com/technetwork/java/javase找到
Download
,进入下载页面: -
因为是CentOS 7.6,所以选择x64 Compressed Archive版本,高版本的jdk都会对低版本兼容的,所以直接下官方推荐的最新版就行了:
-
下载完毕后,用
WinSCP
放入服务器中,然后解压:tar zxvf (jdk的tar包名字)
。 -
接着配置环境变量,这里使用
vim /etc/profile
来配置,也可以用WinSCP
找到/etc/profile
在后面直接配置:export JAVA_HOME=/root/jdk-17.0.2 # 设置为解压缩后的jdk文件夹路径 export PATH=$JAVA_HOME/bin:$PATH
如果是
vim
下的话,按esc
,然后输入:wq
保存退出。 -
然后执行
source /etc/profile
使配置文件生效。 -
最后执行
java -version
查看是否显示出版本,如果显示出版本就是配置成功了。
七、linux上运行springboot项目
将下图的jar包放入服务器中,然后执行java -jar (jar包名字)
就能运行该项目了。如果需要后台运行,则执行nohup java -jar (jar包名字) &
就可以了。