0

我已经浏览了论坛上关于 AngularJS 路由的 URL 重写的所有帖子。我想摆脱我的 URL 中的哈希,我可以,但是在刷新时我仍然得到一个 404 错误。我的托管服务提供商安装了​​ IIS,并且他们有一些关于如何在文件中编写规则的iirf.ini文档。大多数时候它类似于htacces文件(尽管过去我有些头疼,因为它们的文档已经过时且非常基本)而且我远非重写专家(我大部分时间只是复制/粘贴)。他们描述了如何为 Magento、Joomla 等做这件事。

但是现在我完全感到沮丧,因为当我使用 AngularJS 路由并且在刷新页面时没有 404 时,我似乎无法让 url 重写工作。

有人曾经iirf.ini用 AngularJS 路由系统编写过用于 URL 重写的文件吗?是否有不同的解决方案来重写 URL,而不依赖于服务器端重写和刷新没有得到 404 错误。伙计,我正在认真考虑离开这个托管服务提供商。这是我现在正在尝试做的事情,它摆脱了#,但刷新会出现错误:

HTML

<base href="/" />

JS

.config(['$routeProvider','$locationProvider', function ($routeProvider, $locationProvider) {
        $routeProvider
            .when('/', {
                templateUrl: 'partials/home.html',
            })
            .when('/opleidingen', {
                templateUrl: 'partials/opleidingen.html'
            })
            .when('/vaardigheden', {
                templateUrl: 'partials/vaardigheden.html'
            })
            .when('/over', {
                templateUrl: 'partials/over.html'
            })
            .otherwise({
                redirectTo: '/'
            });

    $locationProvider.html5Mode(true);

}

iirf.ini

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)       /index.html/#/$1 
4

0 回答 0