PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2018/10/28 18:31:27
Name 시드마이어
Subject [질문] php로 시작하는 HTML파일을 Node로 변경하기
저는 <?php로 시작하는 HTML파일Node에서 작동하도록 변경해야하는 상황에 있습니다.

코드는 간단한 POST 요청을 보냅니다.

<?php
header("Expires: Mon 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d, M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");

이게 Node에서 작동하면서 HTML 파일형태를 유지할 수 있나요?

전혀 감이 안오는데, 경험 있으신 분들의 조언 부탁드립니다.



통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
NULLPointer
18/10/28 20:31
수정 아이콘
사용자 <-> node.js <-> PHP로 생각하시면 안되고,

사용자 <-> 아파치(혹은 nginx) <-> PHP
............................................<-> node.js

로 구성하시면 됩니다.
즉, node.js와 사용자를 직접 붙이시면 안되고, node.js앞단에 static html 을 처리하거나, php등 다른 서버 사이드 언어를 처리할 수 있는 리버스 프록시 기능을 갖춘 웹서버를 두시면 됩니다.
이유진
18/10/29 16:07
수정 아이콘
php랑 node랑은 차이가 좀 있습니다.
제 생각에 질문자님께선 php 코드만들걸 node에 동치되는 코드를 어떻게 만들수 있는가 고민하시는것 같은데..
php처럼 웹문서(?)로 하는건 아니구요.
http 모듈을 사용해야하는데.. 그것보단 express라는 모듈을 한번 살펴보시고 쓰면 될 것 같습니다.
express를 쓰면 php에서 처럼 뷰를 생성하는 뷰엔진 들(jade, ejs 등..)도 사용 가능합니다.

var express = require('express');
var app = express();

// POST method route
app.post('/', function (req, res) {

res.header({
'Expires': 'Mon 26 Jul 1997 05:00:00 GMT'
})

res.send('hello world')
})

이런 느낌으로 한번 찾아보세요~
시드마이어
18/10/29 16:25
수정 아이콘
답변 감사합니다.
제 생각도 유진님께서 제안해주신 것과 동일한데, 이 경우엔 html파일이 아닌 js파일이 되야하지 않나요?

저는 HTML파일 형태를 유지해야하는 상황(결제사에서 해당 파일(~~~.html)에 대한 요청을 합니다)이라
js파일로 바꾸지 않고 Node에서 연결한다는게 이해가 가지 않습니다.

참고로 파일은 https://github.com/PAYPLECORP/manual/blob/master/cPayPayple/payple_payAuth.html 입니다.
이유진
18/10/29 16:31
수정 아이콘
네 node 어플리케이션에서 이러쿵저러쿵 작업을 해서 최종적으로 html로 보여주는거라고 생각하시면 됩니다.
위의 express를 사용한 코드에서, res.header 로 헤더를 정하고 res.send 로 요청자에게 html 문서를 쏴주는데요.

php에서는 <?php echo 'hello world' ?> 이런 코드를 node에서는 저렇게 하는거죠.
그래서 저 php로 된 html 파일을 유지할 수는 없습니다.

res.send로 보내기 어려운 프론트엔드의 html 문서같은 경우에는 jade나 ejs 같은 뷰엔진을 쓰셔야합니다.
그러면 php랑 꽤 비슷해져요.
시드마이어
18/10/29 16:37
수정 아이콘
저도 Node를 개발해서 express와 pug, jade 등을 사용해서 어떤 말씀이신지 이해하고 있습니다.
그러나 결국 html 형태를 유지하지 못한다면 결제사에서 요청하는 ~~~.html에 대해선 요청에 응답하지 못하지 않나요?
결제사에서 요청하는 주소를 ~~~.html 파일이 아닌 특정 라우트로 처리해야할 것 같습니다.
이유진
18/10/29 16:35
수정 아이콘
코드를 뒤늦게 봤네요.
보통 pg사나 카드사에서 제공하는 코드들이 node는 잘 없어서 난처할때가 많죠.
저는 두가지방법으로 해결하는데요.

위의 널 포인터님이 말씀해주신것처럼 리버스프록시 서버를 두고 php를 따로 운용하던가,
혹은 간단한 코드라면 php 코드를 node의 코드로 포팅하는 거거든요.

그런데 보여주신 코드는 node에 대한 이해만 있으면 간단하게 포팅할수 있는 정도라 생각이 드네요
이유진
18/10/29 16:40
수정 아이콘
만약 결제사에서 domain/response.html 이렇게 응답받기를 원한다면,

app.post('/response.html', function () { ~~ })
이렇게 요청하시면 될것 같습니다.
시드마이어
18/10/29 16:43
수정 아이콘
function 안에 php코드에 있는 curl 요청을 담아주면 해결될 것 같네요.

바쁘실텐데 자세하게 답변해주셔서 정말 감사합니다.
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
126414 [질문] 사무용PC 견적 한 번 봐주시겠어요? [13] Out of office1898 18/10/29 1898
126413 [질문] 토익 700 가능할까요?? [13] HuggingStar2154 18/10/29 2154
126412 [질문] 게임하는게 피곤합니다 [30] 블루태그4326 18/10/29 4326
126411 [질문] 가족들과 멀어지는 방법이 궁금합니다. [16] Secundo4181 18/10/29 4181
126410 [질문] 인쇄불량 질문입니다. [3] 삭제됨1151 18/10/29 1151
126408 [질문] 유효기간 지난 토익 성적은 확인가능한가요? [5] 카발리에로20785 18/10/29 20785
126407 [질문] 앞뒤버튼있는 무선마우스 추천해주세요 [8] 킁킁갑2891 18/10/29 2891
126406 [질문] 한국에서 유용한 길찾기, 버스시간앱 추천 부탁드려요 [9] mystery spinner2252 18/10/29 2252
126405 [질문] 시계를 샀습니다. 관리 어떻게 해야하나요? [4] 마남2140 18/10/29 2140
126404 [질문] 비교적 잘 안 알려진 의료 관련 만화로는 어떤게 있을까요? [14] banelingMD2817 18/10/29 2817
126402 [질문] 플스 4 선물용 타이틀 추천 부탁드립니다. [12] LG우승3123 18/10/29 3123
126401 [질문] 강아지 출산 후 어떻게 챙겨주면 좋나요? [4] 위키미키3897 18/10/29 3897
126400 [질문] 프로야구 타고투저의 이유가 무엇인가요? [18] 더미짱2460 18/10/29 2460
126399 [질문] 원주 소고기 살 곳 문의드립니다. [2] 웰빙소고기2220 18/10/29 2220
126398 [질문] 데스티니 가디언즈 구매했습니다. [4] 예나1845 18/10/29 1845
126397 [질문] 루미간 점안액에 대해 궁금합니다 애플2924 18/10/29 2924
126396 [질문] 여행관련 옷 질문입니다! [4] 곰비1309 18/10/29 1309
126394 [질문] 좁쌀여드름에 크레오신 아직도 효과잇나요? [3] 삭제됨2658 18/10/29 2658
126393 [질문] 먼거리에 있는 사람과 통화시 통화품질 불량처리? [1] 북극1254 18/10/29 1254
126392 [질문] USB CHK파일을 복구하고 싶습니다. 아타락시아12231 18/10/29 2231
126390 [삭제예정] 왜 쉽게 잠이 들지 못하는건가요? [19] 클레멘티아3656 18/10/29 3656
126389 [질문] 최초 컴퓨터 견적 질문드립니다. [18] 다크 나이트2695 18/10/29 2695
126388 [질문] 넷플릭스 오리지널 드라마 추천 부탁드립니다 [8] 태권도7단이다2529 18/10/29 2529
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로