<코드>//1.php
<코드>//1.py #!usr/bin/env 파이썬` 수입 OS f = 열기('/home/python/1.txt','w') 인쇄('OKOKOK') f.write('확인') f.close()
1. 위의 내용은 py를 성공적으로 호출하고 실행할 수 있습니다
<코드>//2.php <?php $order = '파이썬 /home/python/2.py'; $data = shell_exec($order); var_dump($data); ?>
<코드>//2.py #!usr/bin/env 파이썬` 수입요청 수입 OS r = 요청.get('http://ip.taobao.com/service/getIpInfo.php?ip=0.0.0.0') 인쇄(r.text) f = 열기('/home/python/2.txt','w') f.쓰기(r.text) f.close()
2. 위 내용은 호출 및 실행이 불가능합니다. (파일 권한도 777입니다.)
centos
php 환경: PHP7(고위험 기능이 비활성화되지 않음)
python 기본 환경: python 3.6(요청 모듈이 설치됨)
Anaconda 경로: /root/anaconda3
공통 환경 source activate python36
$PYTHONPATH /root/anaconda3/bin/python3.6
문제가 발견되었습니다
PHP는 Python 2.7을 실행합니다
나중에 Python 리디렉션
ln -s /root/anaconda3/bin/python3.6 /usr/bin/python
ln -s /root/anaconda3/bin/python3.6 /usr/bin/ python2
n -s /root/anaconda3/bin/python3.6 /usr/bin/python3
결과적으로 PHP는 py를 실행할 수 없습니다~~
요청 모듈을 설치하지 않으셨나요