2014-03-13 2 views
0

내 질문에 내가 PHP 언어로 다른 서버에서 스크립트에 매개 변수를 보낼 수있는 방법은 무엇입니까? 예 : http://www.site.com/panel.php 와 나는 몇 가지 매개 변수를 보낼 : 내 사이트는 내가 BETER에 대한 생각 을 panle.php하는 숫자 나 문자열을 보내 http://www.site2.com/scirpt.pl 와 PHP 코드와 에서 지정된 파라미터로 srcipt 실행 펄에서 사용자 CGI 매개 변수를 얻을 을 실행하지만 난 내 나쁜 언어에 대한 펄 CGI 미안에서 backgrund에 해달라고하기 : D어떻게 펄 CGI에서 PHP에서 매개 변수를 얻으려면

+0

쿼리 문자열을 사용할 수 없습니까? http://www.site2.com/scirpt.pl?var1=value1&var2=value2&var3=value3 그들이 펄과 함께 작동하는지 확실하지 않지만 쉬운 옵션 일 것입니다. – mic

+0

따라서 서버를 통해 펄 스크립트에 http 호출을하는 PHP 스크립트로 perl 스크립트를 호출하거나 PHP 스크립트가 호출에서 인수를 전달하는 perl 스크립트에 대한 쉘 호출을 수행하도록 하시겠습니까? – alexmac

+0

왜 공통 코드베이스, PHP 또는 Perl을 사용하지 않는 것이 좋을까요? 이렇게하면 코드 기반을 유지하도록 기술 수준이 낮아집니다. 학습 프로젝트가 아니라 반대 의견이 아니라면 각 학습 도구가 어떻게 작동하는지 이해하는 것이 도움이됩니다. – alexmac

답변

0

당신이 쉘 호출을 수행하고자하는 경우, 그것은 조금 까다로운 가져옵니다. 서버 (다른 컴퓨터)를 통해 쉘 호출을 전달하면 보안 위험이 발생합니다. 쉘에서 컴퓨터에서 스크립트를 실행할 수 없기를 바랄 것입니다. SSH과 같은 프로토콜을 사용하면 적절한 구성으로 쉘 호출을 연결하고 만들 수 있습니다. Perl이나 PHP에서 이것을 호출하면, 원격 기계에서 명령을 실행하도록 지시하는 인수를 사용하여``[Perl] 또는 system() [Perl, PHP] 호출을 ssh에 호출 한 다음 표시 할 표준 출력을 조작합니다 사용자가 보는 페이지

각 서버에 대한 권한에 따라 PHP 스크립트와 동일한 서버로 Perl 스크립트를 복사하는 것이 더 쉽습니다. 이것이 가능한 경우, ssh 단계를 건너 뛰고 명령 호출을 바로 수행 할 수 있습니다.

서버 측 스크립팅으로 무엇이든 할 때, 특히 코드를 실행할 때 보안을 염두에 두는 것이 중요합니다. 은 사용자가 시스템에서 코드를 실행하지 못하도록 모든 사용자 입력을 철저하게 필터링합니다 (). 도움이 필요하면 PHP의 filter_var()와 Perl의 정규 표현식 기능을 살펴보십시오. 보안을 확인하기 위해 무언가를 실제로 원한다면 Perl's taint mode도 사용하십시오.

주석에서 앞서 언급 한 사람이 표준 언어로 코드를 유지하면 수행하려는 작업을 쉽게 조정할 수 있습니다. 하나의 다른 옵션은 curl 또는 wget을 호출하고 HTTP 요청에서 get 또는 post 변수로 "인수"를 전달하는 것이고, 하나의 스크립트로 입력을 구문 분석하는 목적을 상실 하긴하지만 다른 목적으로는 사용할 수 없습니다. 누군가가 두 스크립트 중 하나에서 직접 요청할 수 있기 때문에 양쪽 끝을 필터링해야합니다.

+0

나는이 답변이 원래 포스터보다 조금 늦게 왔지만 나는 인터넷 검색을하고 있었다. 펄 프로젝트에 대한 것들과 내가 실제로 도울 수 있다고 생각하고, 한번 StackOverflow에 기여하고 싶었다. 나는 그것이 누군가를 돕기를 바랍니다. – fraz

관련 문제