2015-02-06 3 views
0

사용자의 요청 URL을 감지하고 특정 오류 페이지로 경로를 변경하는 방법이 있습니까 (예 : ) 모든 경로를 원하는 모든 HTML 파일 (* .html)로 보내고 싶습니다. 오류 페이지로 경로가 변경됩니다. 또한 사용자에게 보이지 않게하십시오.ExpressJS/NodeJS에서 정적 html 파일에 액세스하지 못하도록 사용자를 제한하려면 어떻게합니까?

P .: Express 4 및 최신 Node.JS 버전 사용.

app.get('/', function(req,res){ 
    if(req.is('text/html') == true){ 
     res.redirect('/login'); 
    } 

이것은 작동하지 않는 것으로 보입니다. 요청을 받으면이 파라메타가 누락 된 것 같습니다.

안내하십시오. 미리 감사드립니다.

+0

로 리디렉션됩니다; '효과가있다. –

+1

사람들이 파일에 액세스하지 못하도록하려면 왜 정적 경로로 파일을 호스팅하고 있습니까? – Quentin

+0

@Quentin 어디에서 그걸 넣어야합니까? – theChinmay

답변

2

URL에 html이라는 텍스트가 있다고 가정하고이 경우에는 login으로 라우팅하려고한다고 가정합니다. 다음보십시오 :

app.use(function (req, res, next) { 
    if ((req.path.indexOf('html') >= 0)) { 
     res.redirect('/login'); 
    } 
}); 

그것은 당신의 URL 경로를 검사하고 html을 감지 한 경우는 그냥`app.use (express.static (...)) 전에 조각을 넣어 login

+2

또는 경로의 정규식 :'app.use (/ html $ /, function ...)' – laggingreflex

관련 문제