2014-12-27 60 views
0

我新手在角JS,我需要通過下面的代碼擊潰擊潰,但它得到HTTP狀態404錯誤如何通過角JS

Web控制檯顯示此消息

本地主機:8080/testasd /傳遞addStudent無法加載資源:服務器與404狀態響應(未找到)

var mainApp = angular.module("mainApp", ['ngRoute']); 

    mainApp.config(['$routeProvider', 
    function($routeProvider) { 
     $routeProvider. 
      when('/addStudent', { 
       templateUrl: 'AddStudent.html', 
       controller: 'AddStudentController' 
      }). 
      when('/viewStudents', { 
       templateUrl: 'ViewStudents.html', 
       controller: 'ViewStudentsController' 
      }). 
      otherwise({ 
       redirectTo: '/addStudent' 
      }); 
    }]); 

    mainApp.controller('AddStudentController', function($scope) { 
     $scope.message = "This page will be used to display add student form"; 
    }); 

    mainApp.controller('ViewStudentsController', function($scope) { 
     $scope.message = "This page will be used to display all the students"; 
    }); 
+0

你想它去到本地主機:8080/testasd/addStudent或localhost:8080/addStudent? –

回答

0

你需要配置你的Web服務器發送index.html要求的所有的URL。這被稱爲重寫規則。這是因爲Web瀏覽器將發出對該URL的GET請求,並且Web服務器希望在該位置找到文件。重寫規則可以攔截該請求並將其重定向到其他文件。

您的路由中的URL在Web服務器上不存在,但需要加載AngularJS。因此,請發送來自Web根目錄的index.html以獲取所有請求。這假設您正在創建所謂的單一頁面應用程序

對於Apache在Web根目錄中創建一個名爲.htaccess文件

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^(.*)$ index.html [QSA,L] 
</IfModule> 

對於IIS創建一個文件在Web根稱爲web.config

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
<system.webServer> 
    <rewrite> 
     <rules> 
      <clear /> 
      <rule name="angular" patternSyntax="Wildcard"> 
       <match url="*" /> 
       <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> 
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> 
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> 
       </conditions> 
       <action type="Rewrite" url="index.html" /> 
      </rule> 
     </rules> 
    </rewrite> 
</system.webServer> 
</configuration> 
+0

我在web根目錄下做了.htaccess,但沒有工作 –