linux服务器上部署前后端应用程序

确认前端打包前已改后端地址为实际服务器的地址

linux服务器上部署前后端应用程序

 npm run build生成dist文件

1、准备两个软件 putty.exe WinSCp.exe

2、通过putty.exe连接云服务器。

linux服务器上部署前后端应用程序

 root登录,密码云服务器提供的密码

linux可以修改密码

输入passwd,再输入新的密码

3、linux下安装apache,命令行输入apt-get install apache2 

安装好后,输入服务器地址,浏览器中可以看到apache的页面,说明安装成功

4、打开WinSCP软件

linux服务器上部署前后端应用程序

 登录服务器

5、apache网站的默认网站的配置文件在root-->var-->www--->html文件夹里面

linux服务器上部署前后端应用程序

 6、上传我们打包好的前端文件到上面的目录下(选中拖拉进上面的目录即可)

7、屏蔽通过浏览器浏览到主页文件夹下static目录

进入root-->etc--->apach2文件夹,打开apache2.conf文件

linux服务器上部署前后端应用程序

 修改配置信息

linux服务器上部署前后端应用程序

 删除上图中Indexes,即可屏蔽var/www/下static目录的访问

8、重启apache2

输入 sudo /ect/init.d/apache2 restart

9、如果服务器的80被禁用,可以在root-->etc--->apach2文件夹打开ports.conf修改  Linten 80到别的端口,用80端口,浏览器地址后面就不需要加:80了,别的端口要加:端口号

10、安装数据库

sudo apt-get install mysql-server mysql-client

输入mysql进入数据库

输入use mysql;切换数据库

通过命令修改mysql数据库的登录密码 

update mysql.user set authentication string=password(‘123456‘) where user=‘root‘ and Host=‘localhost‘;

update user set plugin="mysql_native_password";

flush privileges;

quit;

上面就把root的密码修改为123456

可以输入mysql -uroot -p

再输入密码就可以登录mysql

11、导出本地数据库

linux服务器上部署前后端应用程序

 存为mysql.sql

12、通过Navicat连接云服务器上的数据库

linux服务器上部署前后端应用程序

13、通常上面的连接会失败,因为此时mysql数据库的远程连接时关闭的,所以要先开启mysql的远程连接许可

14、登录mysql, use mysql

输入select User, Host from user;

linux服务器上部署前后端应用程序

 上面可以看到所有的用户都只可以在localhost上登录,即只可以在本地登录

输入 GRANT ALL PRIVILEGES ON *.* TO "%" IDENTIFIED BY "123456";

再输入select User, Host from user;

linux服务器上部署前后端应用程序

 可以看到root用户的Host变成了%,即可以远程登录

15、修改mysql配置文件

linux服务器上部署前后端应用程序

 找到将 bind-address = 127.0.0.1注销

#bind-address = 127.0.0.1

16、重启mysql

启动mysql

sudo /ect/init.d/mysql start

sudo service mysql start

停止mysql

sudo /etc/init.d/mysql stop

sudo service mysql stop

重起mysql

sudo /etc/init.d/mysql restart

sudo service mysql restart

17、现在可以通过Navicat远程连接mysql服务器了

18、远程连接mysql服务器,并新建一个数据库

linux服务器上部署前后端应用程序

19、打开新建的数据库,右击选择运行SQL文件,找到之前导出的.sql文件

 linux服务器上部署前后端应用程序

 20、这样本地mysql数据库就已经上传到远程数据库服务器中,现在要关闭数据库服务器的远程访问功能,否则暴露在网络上比较危险

还是到前面的配置文件中,激活bind-address =127.0.0.1

 linux服务器上部署前后端应用程序

重启mysql服务器,即关闭了mysql服务器远程访问,可以通过端口扫描网站输入服务器的地址及3306端口,发现mysql服务器的端口是关闭的

21、安装python3及依赖

apt install python3

apt install python3-pip

pip3 install pymysql

pip3 install flask

pip3 install flask_cors

22、通过WinSCP把后端的web服务器.py文件放到服务器上,比如root根目录中

23、命令行输入 python3  ./app.py

linux服务器上部署前后端应用程序

 后端程序被运行起来

24、需要注意的是,后台应用程序时通过putty远程连接到服务器上操作的,一旦putty停止,那么所有运行在这个终端上的后台进程就会停止。

所以需要以下命令,让后端应用程序运行在服务器后台,而不会因为putty终端的退出结束

nohup python3 /root/app.py &

linux服务器上部署前后端应用程序

 25、最后注册一个域名,配置好域名解析后,就可以愉快的玩耍了。