PHP Apache2 के उपयोग के किस संस्करण को बदलें?


25

Ubuntu 10.04, MySQL 5.1, Apache 2.2 और PHP 5.2 / 5.3:

मुझे अभी पता चला है कि मैं एक CRM अनुप्रयोग के लिए PHP के गलत संस्करण का उपयोग कर रहा हूं। एक बार जब मुझे पता चला phpinfo()कि अपाचे 2 का उपयोग करने के लिए एक सरल स्क्रिप्ट कैसे बनाई गई है , तो मैंने इसे बदलने की कोशिश की php.iniकि मेरा वेबसर्वर जो मैं चाहता हूं वह पीएचपी का उपयोग करेगा। खैर, यह मेरी समस्या है। यकीन नहीं है कि कैसे करना है।

मैंने PHP का संस्करण संकलित किया है जिसे मैं /etcयहाँ चाहता हूँ :

/etc/php-5.2.8/

इसके अंदर, एक php.ini-recommendedफ़ाइल थी जिसे मैंने कुछ बदलाव किए और नाम बदलकर php.iniPHP का उपयोग किया। लेकिन जब मैंने अपना ब्राउज़र खोला और अपना इतिहास साफ़ कर दिया और http://localhost<CRM dir>/install.phpपते पर गया, तो जादूगर कहता है कि मैं PHP के सही संस्करण का उपयोग नहीं कर रहा हूँ।

इस पोस्ट के आधार पर मुझे अपनी test.phpस्क्रिप्ट चलाने के बाद दिखाई देने वाले PHP के संस्करण को बदलने के लिए मुझे क्या करना होगा ? दूसरे शब्दों में, phpinfo()कहते हैं कि मैं PHP 5.3.2 चला रहा हूं, लेकिन मैं इसे अपने संकलित 5.2.8 संस्करण में बदलना चाहता हूं /etc

जवाबों:


8

आपके सर्वर के आधार पर, आपको अपाचे को देखना चाहिए, पीएचपी को नहीं।

(RHEL / CentOS के लिए) देखें /etc/httpd/conf.d/php.ini

#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated web pages.
#
LoadModule php5_module modules/libphp5.so
#
# Causes the PHP interpreter to handle files with a .php extension.
#
AddHandler php5-script .php
AddType text/html .php

आप देखेंगे कि आपका PHP मॉड्यूल है modules/libphp5.so

AddHandler php5-script .phpएक्सटेंशन के साथ किसी भी फाइल पर PHP चलाने के लिए Apache बताता है .php

यदि आप RPM आधारित OS का उपयोग कर रहे हैं, तो PHP के वर्तमान संस्करण को अनइंस्टॉल करना (यह मानकर कि आप ऐसा कर सकते हैं) संभव है, और उस संस्करण को पुनः स्थापित करें जिसे आप खोज रहे हैं।

rpm -qa | grep php

आपको दिखाएगा कि वर्तमान में PHP का कौन सा संस्करण स्थापित है।


3
यह उल्लेखनीय है कि आपको अपाचे को कॉन्फ़िगर करने के बाद उछाल देना चाहिए ताकि इसे उठाया जाए।
बेन पिलब्रो

मैं वास्तव में चाहता हूं कि यह आसान था। php.iniसर्वर डायरेक्टरी में मेरे पास एकमात्र फ़ाइल है, /etc/apache2/php.iniलेकिन वह नहीं है जहाँ आप सुझाव देते हैं। यह फ़ाइल आपके पास इन घटकों की बात नहीं करती है: LoadModule, AddHandler, AddType, आदि
निकोरेलियस

दिलचस्प। आप किस ओएस पर चल रहे हैं? क्या इसे YUM, APT-Get, या YAST, (या किसी अन्य पैकेज मैनेजर) के माध्यम से कॉन्फ़िगर किया गया था?
grufftech

उबंटू 10.04। PHP के नए संस्करण (5.3.2) को आसानी से एकजुट किया जा सकता है apt-get, जो मैंने किया है। लेकिन hp PHP 5.2.8 और 5.2.13 मैंने संकलित किया, php.net/releases की फ़ाइलों का उपयोग करके । मैं वास्तव में PHP के पुराने संस्करण को चलाने की कोशिश कर रहा हूं। मुझे लगता है कि संक्षिप्तता के लिए वैकल्पिक दृष्टिकोण क्रम में हैं। आपकी मदद के लिए धन्यवाद, फिर भी ...
निकोरेलियस

42

यदि आप पहले से ही php के अन्य संस्करण को स्थापित करते हैं, तो आपको केवल Apache द्वारा उपयोग किए जाने वाले php * मॉड्यूल को बदलना होगा।

उदाहरण के लिए, मेरे पास php5 और php7.0 है। जब मुझे एपाचे php7.0 का उपयोग करना होता है, तो मुझे केवल उसके मॉड्यूल और disalbe php5 मॉड्यूल को सक्षम करने की आवश्यकता होती है।

sudo a2dismod php5
sudo a2enmod php7.0
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.