당신이하려는 것은 그렇게 할 수 없습니다.
클라이언트 쪽과 서버쪽에는 항상 두 가지 측면이 있습니다. 스크립트가 클라이언트 컴퓨터 또는 서버에 있습니까?
클라이언트 인 경우 : 방문자로서 귀하는 HTML 웹 사이트 만 볼 수 있습니다. onClick
자바 스크립트 (또는 다른 스크립팅 언어 ) 만 실행할 수 있지만 컴퓨터에있는 임의의 쉘 스크립트는 실행할 수 없습니다. HTML 스크립트는 브라우저에서만 실행되며 제한된 작업 만 수행 할 수 있습니다. 가장 중요한 것은 컴퓨터와 상호 작용할 수 없다는 것입니다.
생각해보십시오 : 브라우저가 파일을 여는 방법을 어떻게 알 수 있습니까? 이것이 보안 문제라고 생각하지 않습니까? 클라이언트 컴퓨터에서 스크립트 실행을 트리거하는 일반 웹 사이트입니까? 같은 것이 있다면 onClick('rm -rf /home/user')
어떨까요?
대안은 클라이언트에서 코드를 실행하려는 경우 Java 애플릿을 실행하는 것입니다. 그러나 정확히 동일하지는 않으며 실제로는 복잡합니다. 나는 이것을 자세히 설명 할 필요가 없다고 생각합니다.
스크립트가 서버에있는 경우 : 서버 측에서 스크립트를 실행하고 사용자가 실행을 트리거하도록하려면 서버 측 프로그래밍 언어를 사용해야합니다. 정적 파일이기 때문에 HTML만으로는 작동하지 않습니다. 서버와 상호 작용하려면 PHP 를 사용할 수 있습니다 .
그것은이 exec
웹 서버에 저장되어있는 명령 줄 스크립트를 실행하는 기능. 따라서 기본적으로 exec('/path/to/name.sh');
서버에서 스크립트를 작성 하고 실행할 수 있습니다.
그러나 이것을 넣는 것만으로 onClick
는 충분하지 않습니다. PHP와 서버 측 웹 프로그래밍에 대해 아직 모른다면, 몇 가지 튜토리얼을 먼저 읽은 다음보다 구체적인 질문으로 다시 돌아가고 싶을 것입니다.
적절한 exec(...)
명령 으로 php 파일을 가지고 있다면 , 스크립트는 사용자뿐만 아니라 웹 서버가 속한 그룹에 대해 실행 권한이 설정되어 있는지 확인하십시오 777
.
문제가 발생하면 스크립트의 반환 값을 확인하여 오류가 있는지 확인 echo exec(...);
하십시오.
를 사용하는 브라우저가 아닌 명령 줄에서 스크립트를 실행할 수도 있습니다 php /path/to/file.php
.