在重新加载+ Angular5上找不到网址

时间:2018-03-31 06:07:42

标签: apache amazon-ec2 angular5

我面临一个与角度应用相关的问题,使用我的应用中的组件然后当我单页加载页面成功加载但是当我在新标签中打开该URL或重新加载它时,给出错误未找到。

我正在使用AWS apache服务器并且只在其上面对此问题,在我的Godaddy服务器页面重新加载正常工作。

这里我附上错误的屏幕截图。[Error}[1]

提前谢谢

2 个答案:

答案 0 :(得分:2)

在项目根文件夹中添加.htaccess文件。 下面的代码添加到您的 Appache .htaccess 文件中:

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

Nginx .conf文件:

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

执行命令:

sudo a2enmod rewrite

sudo service apache2 restart

答案 1 :(得分:0)

我认为您的.htaccess文件无法访问

在/ var / www / html中创建.htaccess文件,即在index.html所在的文件夹中。

在其中添加以下代码:-

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 

然后转到/ etc / apache2文件夹并使用sudo打开apache2.conf文件。

cd /etc/apache2
sudo vim apache2.conf

删除AccessFileName的注释(#),它看起来像

AccessFileName .htaccess 

然后找到所在的行

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

将“无”替换为“全部”

AllowOverride All

完成!

现在运行命令

sudo service apache2 restart

现在检查!