Ubuntu पर PHP निष्पादन योग्य कहाँ है?


13

मैंने Apache और PHP स्थापित किया है। मुझे पता है कि PHP काम करता है क्योंकि मैंने एक Apache सर्वर पर एक साधारण PHP फ़ाइल का परीक्षण किया है।

मैं एक साधारण वेबसर्वर लिख रहा हूं जो PHP फाइलों को प्रोसेस करने में सक्षम होना चाहिए। इसलिए एक बार जब मुझे एक PHP फ़ाइल के लिए अनुरोध मिलता है, तो मैं कुछ ऐसा करना चाहता हूं, जैसे '' php test.php '' और आउटपुट प्राप्त करें और इसे क्लाइंट को पास करें।

जैसा कि मैं उबंटू में ज्यादा नहीं हूं, मुझे नहीं पता कि इसे करने के लिए PHP निष्पादन योग्य कहां है (इसे \ bin अधिकार में होना चाहिए?)। लेकिन वहाँ कोई PHP फ़ाइल \ bin या \ usr \ bin के अंदर नहीं है।

जब मैं 'कौन सी php' चलाता हूं तो यह कुछ नहीं दिखाता है। मैं यह कैसे करु?


1
क्या हुआ सबसे अधिक संभावना है कि आपको एपीपी में php मॉड्यूल के रूप में php मिला (तकनीकी रूप से - एक पुस्तकालय जो निष्पादन योग्य बाइनरी नहीं है जिसे बाहरी रूप से कहा जाता है), यही कारण है कि आप बाइनरी नहीं ढूंढ सके। यह टिप्पणी उत्तर को पूरा करने के लिए है, जो आपको बताती है कि आपके सिस्टम में php बाइनरी पाने के लिए क्या किया जाना चाहिए, लेकिन ऐसा कोई कारण नहीं है कि यह क्यों गायब था।
अनामिका

यदि आप वास्तव में Ubuntu 8.10 चला रहे हैं जैसे आपके टैग सुझाव देते हैं, तो आपको समझना चाहिए कि Ubuntu 8.10 बहुत पुराना है। आपको वास्तव में ASAP को अपग्रेड करना चाहिए। उस रिलीज़ के लिए कोई सुरक्षा सहायता नहीं है।
9

@Zoredache हाँ मुझे पता है कि यह बहुत पुराना है। लेकिन मैं उबंटू उपयोगकर्ता नहीं हूं। मेरे पास सीडी थी और मैंने इसे स्थापित किया, बस अपने असाइनमेंट के लिए! : D
संस्कारम

जवाबों:


11

आपको php5-cliया php5-cgiपैकेज स्थापित करने की आवश्यकता है ।

sudo apt-get install php5-cli
# OR
sudo apt-get install php5-cgi

जैसा कि Zoredache ने टिप्पणी में उल्लेख किया है। cli संस्करण हेडर को प्रोसेस नहीं करता है और न ही इनका आउटपुट करता है - यह एक तरह से साफ PHP दुभाषिया है जो HTTP से पूरी तरह अनजान है।

यदि आप उपर्युक्त संस्करण में सक्षम संस्करण चाहते हैं, तो CGI संस्करण का उपयोग करें।


1
हाँ, मुझे अभी पता चला है कि मुझे php-cli की आवश्यकता है .. :)
संस्कारम

1
चूंकि वह एक वेब सर्वर लिख रहा है, वह शायद CLI संस्करण नहीं चाहता है क्योंकि वह GET / POST डेटा प्राप्त करने में सक्षम नहीं है।
9

1
ठीक है, स्थापित, अभी भी सवाल: निष्पादन योग्य कहां है?
एंड्रयू

14

अपने टर्मिनल में निम्नलिखित टाइप करें

जिसमें php


मुझे यह मिल गयाphp: /usr/bin/php7.1 /usr/bin/php7.0 /usr/bin/php /usr/bin/php7.2 /usr/lib/php /etc/php /usr/include/php /usr/share/php7.1-opcache /usr/share/php7.2-zip /usr/share/php7.0-intl /usr/share/php7.1-common /usr/share/php7.0-gd /usr/share/php7.2-common /usr/share/php7.1-gd /usr/share/php7.1-xmlrpc /usr/share/php7.2-intl /usr/share/php7.2-mysql
अबू अबू

11

मुझे / usr / bin / में निष्पादक मिले

उदाहरण के लिए:

  • / Usr / bin / php
  • /usr/bin/php7.0
  • /usr/bin/php7.1

1

यदि आप अपना स्वयं का वेब सर्वर लिख रहे हैं, तो आप निश्चित रूप से PHP बाइनरी के CGI संस्करण को स्थापित या निर्मित करना चाहते हैं, और आप CGI प्रोटोकॉल को अपने वेब सर्वर में लागू करना चाहेंगे। CGI संस्करण में GET / POST डेटा को कैप्चर करने के लिए आवश्यक सुविधाएं हैं।

देख:


मैं PHP और CGI समर्थन के साथ एक साधारण वेब सर्वर लिख रहा हूं। Php फ़ाइलों को पार्स करने के लिए, मैं जो करने जा रहा हूं वह है 'निष्पादित / usr / bin / php file.php'। और आप CGI स्क्रिप्ट्स को perl पर पार्स करके चला सकते हैं। क्या मैं सही हू? संभव?
संस्कारम

1
उह, कोई सीजीआई है perl के साथ करने के लिए सुखद है। आपको वास्तव में कम से कम विकिपीडिया लेख पढ़ना चाहिए।
Zoredache
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.