s.jain
s.jain

Reputation: 43

Url Not found on reload + Angular5

I am facing one issue related to the angular app, using components in my app then when I go with the single page the page loaded successfully but when I open that URL in a new tab or reload it, give error Not found.

I am using AWS apache server for this and only facing this issue on it, in my Godaddy server page reloading working properly.

Here I am attaching my screenshot of the error.[Error}[1]

Thankx in advance

Upvotes: 2

Views: 5429

Answers (2)

Rahul Dudhane
Rahul Dudhane

Reputation: 554

I think your .htaccess file is not reachable,

Create .htaccess file inside /var/www/html i.e. in the folder where your index.html is.

Put following code in it:-

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 

Than goto /etc/apache2 folder and open apache2.conf file with sudo.

cd /etc/apache2
sudo vim apache2.conf

Remove comment(#) of AccessFileName it will look like

AccessFileName .htaccess 

Then find the line where there is

<Directory /var/www/>
     Options Indexes FollowSymLinks
     AllowOverride None
     Require all granted
</Directory>

replace "None" with "All"

AllowOverride All

Done!

Now run command

sudo service apache2 restart

And check now!

Upvotes: 6

Vishal
Vishal

Reputation: 46

Add .htaccess file in your project root folder. bellow code add in your Appache .htaccess file:

RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]

Nginx .conf file :

location / {
  if (!-e $request_filename){
    rewrite ^(.*)$ /index.html break;
  }
}

execute command :

sudo a2enmod rewrite

sudo service apache2 restart

Upvotes: 3

Related Questions