在 Nginx 上托管你的 Aurelia Cli 应用程序

环境

本示例假设你按照示例中的说明进行设置为 Aurelia-cli 设置环境本文档说明。

设置摘要:

  • 在 Mac OS X 上使用 Vagrant 1.8.4
  • $cd /path/to/project/vagrant
  • $vagrant up
  • 通过用户界面登录 VM:vagrant / PW:vagrant
  • $cd /home/vagrant/MyProject(你在上面的 Aurelia Cli Basics Explained 中描述的设置 Aurelia 项目的位置。)
  • 应该设置 EPEL 存储库

基本项目目录结构

  • /家庭/流浪者/ MyProject 的
    • / aurelia_project
    • /脚本
    • / src 目录
      • 资源
      • app.js
      • app.html
      • environment.js
      • main.js
    • favicon.ico 的
    • index.html
    • package.json

构建你的应用程序

  • $au build(在项目/脚本目录中创建绑定文件)

设置 Nginx

  • $sudo yum install nginx
  • 启动服务器:$sudo nginx
  • 编辑 nginx.conf 文件(见下文)
    • 将根位置设置为/ var / www / html
    • 将资源位置设置为/ var / www /
  • 编辑文件后重新加载服务器:$sudo nginx -s reload

将文件从 Aurelia 项目复制到服务器

$sudo cp /home/vagrant/MyProject/index.html /var/www/html/
$sudo cp -R /home/vagrant/MyProject/scripts /var/www/html/
$sudo cp mkdir /var/www/src/
$sudo cp -R /home/vagrant/MyProject/src/resources /var/www/src/
  • 在 VM 中的 Web 浏览器上转到 http:// localhost ,你应该会看到默认的 Aurelia 应用程序。
  • 如果按上述方法进行设置,则端口 80 由 VM 转发,因此你可以转到主机操作系统上的浏览器并转到 http://192.168.0.3:80 并查看该站点。

/etc/nginx/nginx.conf

# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;

events {
    worker_connections 1024;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.

    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

    root /var/www/html/;

    location /src/resources {
        root /var/www/;
    }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }
}