PHP Ubuntu 13.10 üzerinde iyi çalışmıyor ve mcrypt phpmyadmin'de eksik


15

UBUNTU 13.04'den 13.10'a yükseltme yaptım ancak PHP sayfaları veya phpmyadmin ile çalışamıyorum. Ben Ubuntu Lambayı yüklemek için bu yolu denedim sudo apt-get install lamp-server^ phpmyadmin ve ben bu satırı ekledikten doğru kurulum sonrası yapılandırma hepsini yaptım Include /etc/phpmyadmin/apache.confiçin /etc/apache2/apache2.confo zaman yeniden apache2

Şimdi iki problemim var:

  1. Sayfanın altındaki phpmyadmin bu hatadır: The mcrypt extension is missing. Please check your PHP configuration Ben kontrol ve mcryptvardı, ama phpmyadmin bana eksik hata veriyor.

  2. Diğer sorun PHP sayfalarında PHP yok gibi görünüyor ve tüm html çünkü çok sayıda PHP satırları metin kutusundaki gibi yazdırılır: <? echo $row['details']; ?> Herkes bana ne yapmam gerektiğini söyleyebilir mi?

Yanıtlar:


48

Mcrypt sorununuz için bunu deneyin:

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

Mcrypt.ini dosyasının konumu ile ilgili bir hata, bilgiyi buradan aldım .

Aynı hatayı vardı, emin olmak için bir cpyerine yaptım mvama sorunu çözdü.

PHP çalışmadığında, phpmyadmin'i (mcrypt hatasıyla bile) çalışır hale getirirseniz, PHP'nin çalıştığı anlamına gelir (phpmyadmin PHP kullandığından). Ama örnek içinde <? echo $row['details']; ?>değişim <?için <?phpve yeniden deneyin?


1
teşekkür ederim, cevabınız tüm sorunlarımı düzeltti. <? ?> artık çalışmıyor mu? php yeni sürümünde? çalışmak için <? php?> olmalı?
Mohammad_Hosseini

Ben sadece googled ve kısa etiketleri artık varsayılan olarak aktif değil gibi görünüyor.
Tekrar açabilirsiniz

şimdiden teşekkürler, ama yine de bir sorun biraz var, bazı php sayfalarımda sorunun ne olduğunu bilmiyorum, bu sayfaları yüklemeye çalıştığımda sadece beyaz bir battaniye sayfası gösteriyor, etkinleştirmeyi denedim sayfanın üst kısmında php için hata bildirme hatası var ancak sayfada hiçbir şey görünmüyor. Bu, bu soruyu sormak için iyi bir yer olmayabilir ama bu sorunu getirdim beri tekrar sordum. Eğer bazı kodları buraya koymam gerekiyorsa bana söyle, teşekkürler.
Mohammad_Hosseini

Tamamen beyaz bir sayfa genellikle eksik köşeli parantez veya noktalı virgül anlamına gelir. Veya var olmayan bir işlevi çağırmak. Size yardımcı olabilecek bir yazılım geliştirme ortamınız yoksa, kodunuzun bölümlerini her seferinde bir blok olarak yorumlamayı deneyin (/ * ile yorumları başlatın ve * / ile bitirin, aradaki her şey yorumlanır). Ben genellikle kodun yaklaşık yarısı ile yorum ve sonra görüntülemeye çalışın, sonra her zaman hatanın nerede olduğunu daraltmak).
Whatts

3

İkinci sorun için, metin kutusuna birçok PHP satırı yazdırılır: echo $row['details'];

Php.ini yapılandırma dosyanızı düzenleyin (apache için):

sudo nano -w /etc/php5/apache2/php.ini

ve değişim:

short_open_tag = Off

için:

short_open_tag = On

müthiş kılavuz, teşekkürler beyaz sayfa sorunu da çözüldü
Mohammad_Hosseini

1

/Etc/php5/conf.d/ altındaki tüm komut dosyalarınızı kontrol edin, çünkü artık çalışmazlar. Benim durumumda, imap da çalışmayı bıraktı.

Sembolik bağlantı hilesi ile problem çözüldü (kök olarak):

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

senin yolun çalışmıyor bana imap ya da mcrypt hiçbir varoluş hatası verir ama ne @whatts benim için çalıştı dedi.
Mohammad_Hosseini

1

(Bunu yukarıdaki bir yorum olarak gönderirdim, ancak ayrıcalıklara sahip değilim.)

Ne cpyerine sezgi kullanmak mviyi bir şeydi. Eğer laravel 4 çerçeve kullanıyorsanız Örneğin, esnaf CLI algılar mcrypt.iniiçinde /etc/php5/mods-available/, ancak çerçeve kendisinde bunun için bakmak gibi görünüyor /etc/php5/conf.d/. Her şeyin çalışması için her iki konumda da bir kopyasına ihtiyacınız var:

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

0

Terminalde ( Ctrl+ Alt+ T)

1. php.ini dosyasını açın:

/etc/php5/apache2$sudo nano php.ini

2. Kapalı ayarını Açık olarak değiştirin:

short_open_tag = On

3. apache'yi yeniden başlatın:

sudo service apache2 restart

0

Aslında mcrypt.ini dosyası için doğru yer mods-availabledizinde değil conf.d. Böylece mcrypt yapılandırma dosyasını değiştirmek ve etkinleştirmek , bu sorunu çözer.


-1

mcryptUbuntu 14.04'ü yükledikten sonra da bir sorun yaşadım . Bu bağlantıyı takip etmek yardımcı olacaktır. www.php.net

  1. Php.ini dosyanızı açın sudo gedit /etc/php5/apache2/php.ini
  2. Apache2'nizi yeniden başlatın sudo service apache2 restart

Bu yardımcı olur umarım.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.