2014-10-10 49 views
0

目前有一个纯HTML网站,其中包含一些嵌入式JS代码,用于控制HTML文件之间的流程以及图形配置细节。目录如下:html,css,fonts,img,js,sound。在我的本地机器上,我可以轻松打开HTML文件并浏览网站。我正在使用nginx作为反向代理的Ubuntu Amazon EC2实例。在实例上运行express.js控制的网站时,我通常只编辑nginx配置文件并启动app/server.js文件。但是,我不确定如何使用一组具有CSS和与其关联的其他资产的静态HTML文件来执行此操作。以下是我在编写nginx文件时的尝试,但我不确定我提议的是否可行。带有多个静态子域名的Nginx和Amazon EC2

server { 
     listen 80 default_server; 
     listen [::]:80 default_server ipv6only=on; 

     root /var/www/website-dashboard/; 
     index index.html; 

     # Make site accessible from http://localhost/ 
     server_name localhost; 

     location/{ 
      default_type "text/html"; 
      try_files $uri.html $uri $uri/ /index.html; 
      access_log off; 
     } 
} 

回答

0

你不应该有问题打开HTML文件与NGINX - 问题是,considdering你正在运行NGINX作为反向代理,你在运行作为Web服务器?

如果您正在运行Apache,那么您需要确保它在端口8080上运行,并且以下NGINX配置应该符合您的要求。

upstream apachebackend { 
    server 127.0.0.1:8080; #apachebackend 
} 

server { 
    listen  80 default; 
    server_name www.domain.com domain.com; 
    access_log /var/log/nginx/domain.com.access.log main; 
    error_log /var/log/nginx/domain.com.error.log; 
    root /usr/share/nginx/html; 
    index index.html index.htm index.php; 

## send request back to apachebackend ## 
    location/{ 
     proxy_pass http://apachebackend; 
     proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; 
     proxy_redirect off; 
     proxy_buffering on; 
     proxy_buffers 12 12k; 
     proxy_set_header  Host   $host; 
     proxy_set_header  X-Real-IP  $remote_addr; 
     proxy_set_header  X-Forwarded-For $remote_addr; 
    } 
} 

如果您将NGINX作为您的网络服务器运行,那么您需要相应地设置它。默认设置应该足够了,只需将文件放在默认的vhost目录中,但我建议使用单独的目录和日志文件正确设置它。

+0

我很坦率地不确定默认情况下在Amazon EC2实例上安装了什么。无论如何检查?另外,假设我的Apache服务器是作为Web服务器运行的,你能否简要解释为什么我需要将我的文件复制到“/ usr/share/nginx/html”而不是保留在当前目录中。 – ikemblem 2014-10-10 16:17:52