
我有一個簡單的本地主機網站,其中有一個 php 頁面,上面有一些呼叫 python 腳本的按鈕。
我可以在本地運行它,並且輸出可以獨立運行,腳本也很好。問題出在導入功能。每當我新增導入時,它就會中斷
我讓它在一台舊筆記型電腦上運行,並且安裝了以前的 PHP 和 Python 版本。
有什麼想法嗎
這是PHP
<?php
$command = escapeshellcmd("/usr/bin/python3 test-py.py");
$output = shell_exec($command);
echo $output;
?>
這是輸出檔的簡單 python whois
import sys
import whois
if len(sys.argv) != 2:
print("Usage: python whois_ip.py <ip_address>")
sys.exit(1)
ip_address = sys.argv[1]
w = whois.whois(ip_address)
with open("output.txt", "w") as f:
f.write(str(w))
print("WHOIS lookup results written to output.txt")
我的問題是 1 有什麼想法為什麼導入功能不再運作?難道是導入庫的權限問題? 2 我的 PHP.ini 已停用_functions = ""(所以沒有停用任何內容,對吧?)3 PHP 8.2.5 和 Python 3.9.6 有什麼特別之處 我該注意嗎?
感謝對此的任何和所有幫助。謝謝
答案1
我已經找到了我的解決方案並在這裡分享。
在我的 XAMPP 設定檔中,有一個 httpd.conf,您可以在其中設定使用者。我的被設定為守護程式。我將其更改為我的本地用戶名,員工是該群組。這使得我的腳本的額外功能可以工作。
在此分享給其他可能有類似問題的人。
簡而言之,這是運行 httpd 的使用者的權限問題