mCrypt Ubuntu के 13.10 में अपग्रेड के बाद मौजूद नहीं है


92

जब मैंने अपने सिस्टम को Ubuntu १३.०४ से १३.१० तक अपग्रेड किया है, अपाचे, mysql और php कॉन्फ़िगरेशन के साथ कई समस्याएं हुई हैं।

मैंने उनमें से अधिकांश को हल कर दिया है, लेकिन मुझे लगता है कि mCrypt पुस्तकालय काम नहीं कर सकता। पैकेज स्थापित है, इसलिए मुझे इसे प्राप्त करने की आवश्यकता नहीं है। सर्वर काम करता है और सब कुछ ठीक लगता है, लेकिन जब मैं php artisan serveलारवेल 4 के साथ चलने की कोशिश करता हूं, तो मुझे एक संदेश मिलता है कि mCrypt की आवश्यकता है।

मैंने किया था php --ri mcryptऔर आउटपुट था Extension 'mcrypt' not present. मैं डालने की कोशिश की है extension=mcrypt.soकरने के लिए /etc/php5/apache2/php.ini, लेकिन यह काम नहीं किया।

कोई विचार?

का आउटपुट dpkg --get-selections | grep php5

libapache2-mod-php5         install
php5                        install
php5-cli                    install
php5-common                 install
php5-gd                     install
php5-json                   install
php5-mcrypt                 install
php5-mysql                  install
php5-readline               install

क्या आपको यकीन है कि यह स्थापित हैdpkg --get-selections | grep php5
tlenss

apt-get install php5-mcrypt?
लाजोस वेर्स

1
मैंने @tlenss कमांड के आउटपुट के साथ सवाल अपडेट किया है। sudo apt-get install php5-mcryptआउटपुट जो इसे स्थापित किया गया है और नवीनतम संस्करण है
वुक स्टानकोविक्स

2
हो सकता है कि यहाँ का उत्तर आपको askubuntu.com/questions/360646/… में
tlenss

उस पृष्ठ पर लॉन्चपैड बग मिला, जिसने मुझे समाधान दिया। धन्यवाद
वुक स्टन्कोविक

जवाबों:


273

मुझे लगता है कि मुझे launchpad.net पर समाधान मिला ।

sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available
sudo php5enmod mcrypt
sudo service apache2 restart

इसने मेरे लिए काम किया।


इस उत्तर के लिए धन्यवाद, OpenCart 1.5.6 में यह मुद्दा त्रुटि पैदा कर रहा था ... घातक त्रुटि: अपरिभाषित फ़ंक्शन को कॉल करें mcrypt_create_iv () / में <पथ यहाँ> /system/library/
enc एन्क्रिप्शन.php

ध्यान दें, इस समस्या का समाधान नहीं काम मेरे लिए Laravel / कारीगर के साथ जब तक मैंने किया भी /etc/php5/cli/conf.d में प्रतीक से जुड़े
डेविड एम

मुझे यह त्रुटि मिल रही है। मुझे कौन सा कोड अपडेट करना है? किस फाइल में मुझे अपडेट करने की आवश्यकता है? कृपया सुझाव दें ..
user2089987

इसके कारण Webgility सिंक नहीं हो रही थी। इसे स्थापित करने से यह ठीक हो गया। धन्यवाद!
रयान

2
Ubuntu 14.04 / PHP5.5 के साथ पहली पंक्ति की आवश्यकता नहीं है। php5enmod लिंक बनाता है।
वॉक

27

मुझे Ubuntu 14.04 के साथ यह समस्या थी और मैंने इसे हल करने के लिए निम्न कार्य किया:

sudo apt-get install php5-mcrypt
sudo php5enmod mcrypt

sudo service apache2 restart

1
यह मेरे लिए काम किया है, मेरे पास PHP संस्करण 5.5.9-1ubuntu4.4 है, और मेरे पास /etc/php5/conf.d निर्देशिका नहीं है।
flcoder

14

मुझे यह समस्या उबंटू 14.04 के साथ स्थापित होने के बाद भी है।

सबसे पहले mcrypt को इनेबल करें

sudo gedit /etc/php5/apache2/php.ini

इस कमांड को किसी भी लाइन में जोड़ें

extension=mcrypt.so

/ Etc / php5 में conf.d फ़ोल्डर बनाएँ

sudo mkdir conf.d

और उस फोल्डर के अंदर mcrypt.ini फाइल बनाएं

sudo gedit mcrypt.ini 

फिर इस कमांड को उस फाइल में जोड़ें

extension=mcrypt.so

फिर फ़ाइल के लिए एक लिंक बनाएं

sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available

Mcrypt मॉड्यूल सक्षम करें

sudo php5enmod mcrypt

फिर से शुरू करें

sudo service apache2 restart

3
आप की जरूरत नहीं है extension=mcrypt.soमें php.ini। यह इसके बिना भी काम कर रहा है, क्योंकि php एक्सटेंशन (जैसे mcrypt) अलग-अलग .iniफाइलों में हैं।
मशिनहेडिक्ट

@machineaddict मेरे लिए 'एक्सटेंशन = mcrypt.so' को जोड़ने के बाद mcrypt स्थापित करने के बाद काम किया। लुबंटू 14.04 ट्रस्टी थार। मैं स्वचालित रूप से लोड नहीं किया गया था
क्लेन Dsilva

11

Ubuntu 13.10 से 14.04 तक:

sudo php5enmod mcrypt
sudo service apache2 restart

मेरे लिये कार्य करता है।


मेरे लिए WARNING: Module mcrypt ini file doesn't exist under /etc/php5/mods-available:। हालाँकि, फ़ाइल कहीं और स्थित थी। sudo cp /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/और ऊपर दिए गए आदेशों को पूरा किया। Www.devraju.com
machineaddict

3

मुझे Ubuntu 14.04 और Nginx के साथ भी यह समस्या थी, लेकिन मेरे लिए टिप FPM सेवा को पुनरारंभ कर रही थी, इसलिए मैंने किया:

पुस्तकालय स्थापित करें

apt-get स्थापित php5-mcrypt

रास्ता खोजो

updatedb && mcrypt.so का पता लगाएं

Mcrypt.ini फ़ाइल का पथ /etc/php5/mods-available/mcrypt.ini में स्थित mcrypt.so के अंदर सेट करें

विस्तार = / usr / lib / PHP5 / 20,121,212 / mcrypt.so

और फिर FPM सेवा को पुनरारंभ करें

सेवा php5-fpm पुनः आरंभ


मुझे बस अपने ubp16.04.04 पर php5-mcrypt स्थापित करने और सेवा php5-fpm पुनः आरंभ करने की आवश्यकता है।
deanpodgornik

नीस..इन मामलों में मैन्युअल रूप से mcrypt को खोजने की जरूरत है क्योंकि एक्सटेंशन mcrypt.ini फाइल में खाली था।
डेरिक लीमा

0

एक और समाधान अगर पैकेज पहले से ही स्थापित है:

sudo aptitude reinstall php5-mycript

इसने अपग्रेड करने के बाद मेरे लिए काम किया



0

मैक ओएस एक्स योसेमाइट पर चलने वाले PHP 5.5.14 के साथ मुझे भी यही समस्या थी। मैं Laravel 5.0 स्थापित करने का प्रयास कर रहा था। और जब मैंने एक नई परियोजना बनाने की कोशिश की, तो मुझे नीचे की तरह एक त्रुटि मिली (यहां तक ​​कि जब मैंने php कारीगर की सेवा के साथ लार्वा सर्वर शुरू करने की कोशिश की

Alejandros-MacBook-Pro:Documents Lexynux$ laravel new blog
Crafting application...
PHP Notice:  Use of undefined constant MCRYPT_RIJNDAEL_128 - assumed 'MCRYPT_RIJNDAEL_128' in /Library/WebServer/Documents/blog/config/app.php on line 83
PHP Notice:  Use of undefined constant MCRYPT_RIJNDAEL_128 - assumed 'MCRYPT_RIJNDAEL_128' in /Library/WebServer/Documents/blog/config/app.php on line 83
Generating optimized class loader
Compiling common classes
Compiling views
PHP Notice:  Use of undefined constant MCRYPT_RIJNDAEL_128 - assumed 'MCRYPT_RIJNDAEL_128' in /Library/WebServer/Documents/blog/config/app.php on line 83
Application key [CCOPocoMjnJTx4AFXk64wqyTKyo3BlHq] set successfully.
Application ready! Build something amazing.
Alejandros-MacBook-Pro:Documents Lexynux$ 

इसलिए मैंने नैनो संपादक के साथ अपनी php.ini फ़ाइल के अंत में नीचे दी गई पंक्ति को जोड़ा:

extension=mcrypt.so
sudo nano /etc/php.ini

अंत में बस टर्मिनल को पुनरारंभ करें और लार्वा ऐप सर्वर को पुनः आरंभ करें

php artisan serve

और यह ठीक काम करता है!


0

बस php.net पर पाया

नोट, उबंटू के लिए, बस php5-mcrypt स्थापित करने से काम करने के लिए mcrypt नहीं मिला। इसे सक्षम करने के लिए आपको निम्नलिखित कमांड को रूट के रूप में निष्पादित करना होगा:

apt-get install php5-mcrypt
mv -i /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/
php5enmod mcrypt
service apache2 restart

http://php.net/manual/en/mcrypt.installation.php#114609


0

कभी-कभी, यह "समस्या" होती है क्योंकि आपने अपनी वर्चुअल मशीन के बजाय अपने स्थानीय मशीन पर एक कारीगर कमांड दर्ज किया था। यदि आप होमस्टेड का उपयोग कर रहे हैं, तो mcrypt पहले से इंस्टॉल है। इसे एक अनुस्मारक पर विचार करेंhomestead ssh

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