zoukankan      html  css  js  c++  java
  • eggjs+vue+nginx配置

    安装node

    https://github.com/nodesource/distributions#installation-instructions-1

    注意使用No root privileges方法安装

    安装yarn

    curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
    sudo yum install yarn

    安装nginx

    //安装nginx的命令
    sudo yum install epel-release
    sudo yum install nginx
    //让nginx随系统启动而启动
    sudo systemctl enable nginx
    //常用命令
    //启动:nginx
    //停止:nginx -s stop
    //重载配置:nginx -s reload
    //配置路径:/etc/nginx/nginx.conf
    //日志路径:/var/log/nginx

    nginx关键配置

        server {
            listen       80 default_server;
            listen       [::]:80 default_server;
            server_name  domain.com www.domain.com;
            root   /home/client/;
            location / {
    	    try_files $uri $uri/  /index.html;
            }
            location /api/ {
        	    proxy_pass http://127.0.0.1:7001/;
            }
        }

    注意两个location和root,不要把vue的静态文件放在root目录下

    注意最后一个location中,api和7001后面都有斜杠

    nginx证书配置

    	server 
    	{
    		listen 443;
    		server_name your-domain.com www.your-domain.com;
    		ssl on;
    		ssl_certificate  /root/ssl/your-domain.crt;
    		ssl_certificate_key /root/ssl/your-domain.key;
    		ssl_session_timeout 5m;
    		ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    		ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    		ssl_prefer_server_ciphers on;
    		location / {
    			proxy_buffer_size  128k;
    			proxy_buffers   32 32k;
    			proxy_busy_buffers_size 128k;
    			proxy_pass http://127.0.0.1:912;
    		}
    	}
    	server
    	{
    		listen 80;
    		server_name your-domain.com www.your-domain.com;
        	        rewrite ^(.*)$ https://$host$1 permanent;
    	}
    

    为了调试方便,vue.config.js的配置如下

    module.exports = {
        devServer: {
            proxy: {
                '/api': {
                    target:'http://127.0.0.1:7001',
                    changeOrigin: true,
                    secure: false,
                    pathRewrite: {
                        '^/api': '/' //重写之后url为 http://127.0.0.1:7001/xxxx
                        //pathRewrite: {'^/api': '/api'} 重写之后url为 http://192.168.1.16:8085/api/xxxx
                    }
                }
            }
        }
    };

    egg.js调试配置如下:config文件夹下plugin.js

    module.exports = {
      cors: {
        enable: true,
        package: 'egg-cors'
      }
    };
    

    config.default.js:注意这里的配置是有些危险的,因为可能会同步到服务器上去

      config.security = {
        csrf: {
          enable: false
        },
        domainWhiteList: [ '*' ]
      };
      config.cors = {
        origin: '*',
        allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH,OPTIONS'
      };
    

      

  • 相关阅读:
    日记 2018/1/12
    【程序员笔试面试必会——排序①】Python实现 冒泡排序、选择排序、插入排序、归并排序、快速排序、堆排序、希尔排序
    Python笔试、面试 【必看】
    高性能Go并发
    Go连接MySql数据库Error 1040: Too many connections错误解决
    MAC 配置文件 ~/.zshrc
    go-statsd项目
    日记 2017.11.20
    sed 命令详解
    Opentsdb简介(一)
  • 原文地址:https://www.cnblogs.com/liulun/p/12398291.html
Copyright © 2011-2022 走看看