我面临一个与角度应用相关的问题,使用我的应用中的组件然后当我单页加载页面成功加载但是当我在新标签中打开该URL或重新加载它时,给出错误未找到。
我正在使用AWS apache服务器并且只在其上面对此问题,在我的Godaddy服务器页面重新加载正常工作。
这里我附上错误的屏幕截图。[
提前谢谢
答案 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
现在检查!