我想在自定义域的生产服务器上测试我的 Angular 应用程序。

我尝试通过这种方式进行操作:

  • 我停用了Apache服务器
  • 我在/ etc / hosts 127.0.0.1:9000 mydomain.loc
  • 中添加了一行
  • 我将配置更新为GruntFile.js

    //实际的grunt服务器设置
      connect: {
          options: {
            port: 9000,
            // Change this to '0.0.0.0' to access the server from outside.
            hostname: 'localhost',
            livereload: 35729
          },
          livereload: {
            options: {
              open: 'http://mydomain.loc:9000',
              base: [
                '.tmp',
                '<%= yeoman.app %>'
              ]
            }
          },
          test: {
            options: {
              port: 9001,
              base: [
                '.tmp',
                'test',
                '<%= yeoman.app %>'
              ]
            }
      },
    

  • 之后,我使用 grunt服务服务器运行命令

    Grunt初始化,浏览器窗口打开到正确的地址mydomain.loc:9000

    但是在浏览器中找不到服务器。

    问题是:

    我在做什么错,我该如何解决?

    我想这不需要Apache吗?

    感谢您的任何建议。

    最佳答案

    如该答案所述:Grunt server does not use virtual host name for my app..vhost and httpd are set up but grunt is not using them

    hostname选项仅用于指定livereload应该连接到的位置。这不会更改启动Grunt时打开的默认URL。您需要在livereload选项中指定要打开的URL。例如:

    livereload: {
        options: {
            open: 'http://myapp.dev:9000',
            base: [
                '.tmp',
                '<%= yeoman.app %>'
            ]
        }
    }
    

    关于javascript - Grunt服务器如何正确设置主机名和虚拟主机?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24734812/

    10-16 15:28