NGINX and Angular 2 NGINX and Angular 2 nginx nginx

NGINX and Angular 2


I just had this same issue and found a solution. My base href is "/", however.

Below is my nginx.conf:

worker_processes  1;events {    worker_connections  1024;}http {    include       mime.types;    default_type  application/octet-stream;    sendfile        on;    keepalive_timeout  65;    server {        listen       80;        server_name  mysite.com www.mysite.com;        root /usr/share/nginx/html;        location / {            try_files $uri$args $uri$args/ /index.html;        }    }}


I was also having problems here, this is now contemplated in the angular docs: https://angular.io/guide/deployment

NGinx: use try_files, as described in Front Controller Pattern Web Apps, modified to serve index.html:

try_files $uri $uri/ /index.html;


I had the same issue with a subdomain at a site hosted with HostGator shared hosting. It appears it's running Apache 2.2.31.

Searching around eventually led me to "Apache Directives", which led me to "Custom Error Responses".

I was able to fix my issue by creating a .htaccess file in my subdomain folder with the following line in it:

ErrorDocument 404 /index.html

Though looking at the debug tools, I'm still getting a 404 code returned even though it succeeds.

UPDATE:

Was able to fix the 404 issue by changing my .htaccess to the following:

RewriteEngine On  # If an existing asset or directory is requested go to it as it is  RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]  RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d  RewriteRule ^ - [L]  # If the requested resource doesn't exist, use index.html  RewriteRule ^ /index.html

Now I'm properly getting redirected to index.html and code is 200.