linux服务器安装nginx 配置与部署vue前端项目

nginx简介:Nginx是⼀款⾼性能的 HTTP 和反向代理服务器

编译安装:
安装gcc编译环境:

yum install -y gcc-c++

安装zlib-devel库:

 yum install -y zlib-devel

安装OpenSSL密码库:

yum install -y openssl openssl-devel

安装pcre正则表达式库:

yum install -y pcre pcre-devel

安装nginx:
nginx下载官⽹:http://nginx.org/en/download.html

// 下载安装包, 我下载在/root/
wget http://nginx.org/download/nginx-1.16.0.tar.gz
// 解压
tar -xf nginx-1.16.0.tar.gz
// 创建安装目录,我的目录创建在 /root/nginx
mkdir nginx
// 进入到解压的文件夹内
cd nginx-1.16.0
// 进入到安装包解压文件下执行此命令---配置安装信息,/root/nginx为即将安装的路径、--with-http_ssl_module为支持http模块、--with-http_stub_status_module监控状态模块、--with-pcre正则表达式库
./configure --prefix=/root/nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre
// 进入到安装包解压文件下执行此命令---编译与安装
make && make install
firewall-cmd --list-ports    // 查看已开放端⼝
firewall-cmd --zone=public --add-port=3000/tcp --permanent //开放3000端⼝
firewall-cmd --reload //重启

启停nginx服务
启动:

/root/nginx/sbin/nginx -c /root/nginx/conf/nginx.conf

查看是否启动成功:

ps -ef | grep nginx

下图为启动成功
在这里插入图片描述
关闭:

/root/nginx/sbin/nginx -s stop

开放80端⼝防⽕墙

firewall-cmd --zone=public --add-port=80/tcp --permanent 	//开放80端⼝
firewall-cmd --reload    //重启

访问服务器80端口,居然报错了,403Forbidden,嘤嘤嘤,好气人有么有

2020/04/18 17:46:44 [error] 18439#0: *1 "/root/nginx/html/index.html" is forbidden (13: Permission denied), client: 36.63.44.2, server: localhost, request: "GET / HTTP/1.1", host: "101.37.116.232"

解决办法:

// 进入到nginx安装目录
cd /root/nginx/conf
// 修改nginx.conf配置文件
vim nginx.conf
// 将里面的内容改动  i  esc  :wq
user nobdoy;  改成  user root;
// 停止nginx 服务器
/root/nginx/sbin/nginx -s stop
//重启nginx 服务器
/root/nginx/sbin/nginx -c /root/nginx/conf/nginx.conf
// 查看nginx是否开启
ps -ef | grep nginx

ok
linux服务器安装nginx 配置与部署vue前端项目_第1张图片
前端项目准备工作

  1. 项目根目录下新建vue.config.js文件
module.exports = {
  publicPath: "./"
}
  1. 与后端交互的接口由127.0.0.1改为服务器ip地址
  2. npm run build
    把vue打包后的⽂件上传到nginx/html下

配置nginx.conf文件server部分

cd /root/nginx/conf
vim nginx.conf
server {
        listen       81;   //监听81端口
        server_name  101.37.116.232;  //名称
        root   /var/www/yugang_blog_front/dist/; //项目文件放置的根路径
        charset      utf-8;   // 字符集
        location / {
            index  index.html index.htm index.php;
            #autoindex  on;
        }
}

ok,浏览器输入地址 服务器+端口号
报错了,shit,报了500的错误 ,一看就是服务端出问题了,去项目后端logs里面的app-out-0.log文件内查看错误日志信息,哦豁,原来的数据库拒绝连接呀

Error: ER_HOST_NOT_PRIVILEGED: Host '101.37.116.232' is not allowed to connect to this MySQL server

解决办法:

// 服务器进入数据库
mysql -u root -p
use mysql;
update user set host = '%' where user ='root'; // 将host设置为通配符%,即可允许远程访问。
flush privileges; // 使配置立即生效

你可能感兴趣的:(linux服务器安装nginx 配置与部署vue前端项目)