【php】 php在linux系統上運行,執行系統命令

最近在研究一個第三方軟件打印pdf功能時候,須要php運行第三方軟件指令,花了很長的時間才調試成功,網上找的資料不是不全面就是複製粘貼,乾脆本身來作個帖子了php

要點

  • exec,system等執行的指令必定要寫絕對路徑的指令如/usr/local/bin/wkhtmltopdf,指令前帶sudo,不能用相對路徑或者不用路徑
  • 要配置相應的sudo 權限,限制sudo權限執行的指令,配置visudo (/etc/sudoers)
// php 測試代碼
<?php 
exec('sudo absolute_path/exeName',$out,$result);
echo $result;
// result 輸出爲0 的時候表示成功,1或者其餘表示失敗
#  visudo  打開後再末尾追加
apache ALL=(ALL) NOPASSWD:/usr/local/bin/wkhtmltopdf
# PHP執行的用戶  網絡指定(能夠寫網址)= (目標) 無密碼聲明:限制執行的指令
我的經驗,不喜勿噴,轉載請申明來源自本站
相關文章
相關標籤/搜索