Rumah pembangunan bahagian belakang tutorial php PHP配置,php.ini以及覆盖问题

PHP配置,php.ini以及覆盖问题

Jun 23, 2016 pm 01:24 PM

在部署一个cms项目到服务器上的时候,因为cms的模板比较老,服务器上用的php是5.3.3版(大于5.3,可以认为是新的),有些页面会显示“deprecated”类别的错误信息。安全起见要抑制页面中的错误信息输出,于是修改php.ini,发现error_reporting已经设定为Off了,表示错误输出到日志文件而不在页面上显示。但是,页面上有显示错误啊!

Google一番后在SO上发现了解决方案,是因为配置的覆盖问题,cms源代码中会覆盖php.ini的配置。那么改动cms中的error_reporting语句就可以解决问题了,比如:

if ((DEBUG_MODE & 1) == 1){    error_reporting(E_ALL & ~E_DEPRECATED);}
Salin selepas log masuk
以下是详细的解释,来自 Stefano Locati的博客

PHP Configuration, php.ini and overrides

PHP has several places where configuration can be set. While I had an idea of the precedence of those settings, I decided to test them experimentally to be sure of what I am going to say. In particular this post is focused on error_reporting, but the same considerations can hold true for any setting.

So here is a list of those places, from the more global to the more specific. Each setting lower in the list can override a setting that come before.

1. The php.ini configuration file. In case of Ubuntu there are two of them, /etc/php5/apache2/php.ini is the one used for php apache module. It will have a global effect on all virtual hosts.

2. The conf.d directory. Actually not all installations will have this modularized configuration, but in case of Ubuntu is located in /etc/php5/apache2/conf.d for the apache module. Any file added in this directory is going to be added to main php.ini configuration with higher precedence than php.ini. In other words any setting here will override settings in php.ini - I tested adding an error.ini. It will have a global effect on all vitual hosts.

3. Apache virtual host configuration. Generally set in /etc/apache2/sites-available, every virtual host can have different settings. Inside the VirtualHost tag it's possible to include "php_value error_reporting ", where value is the numeric result of the boolean operations on the constants. In this configuration, in fact is not allowed to use the mnemonic constants but only a numeric value. It will affect only a single virtual host. It will override above settings.

4. .htaccess. It's also possible to set configuration values and in particular the error_reporting setting also in .htaccess, with the same syntax described in 3. It will affect only the directory in which .htaccess is located and all subdirectories. It will override above settings, in this case is not necessary to restart apache.

5. Source code. The last place where this setting can be altered is directly in the executed PHP source. If used, will override all previous settings. It can be set calling the function "error_reporting()" or with "ini_set("error_reporting", )". Compile errors could still show, because the script won't be executed in that case.

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Tafsirkan kaedah pengubahsuaian pengekodan dalam fail PHP.ini Tafsirkan kaedah pengubahsuaian pengekodan dalam fail PHP.ini Mar 27, 2024 pm 03:42 PM

Tafsirkan kaedah pengubahsuaian pengekodan dalam fail PHP.ini Fail PHP.ini ialah fail konfigurasi PHP Anda boleh mengkonfigurasi persekitaran berjalan PHP dengan mengubah suai parameter di dalamnya. Tetapan pengekodan juga sangat penting, dan memainkan peranan penting dalam memproses aksara Cina, pengekodan halaman web, dsb. Artikel ini akan memperkenalkan secara terperinci cara mengubah suai konfigurasi berkaitan pengekodan dalam fail PHP.ini dan memberikan contoh kod khusus untuk rujukan. Lihat tetapan pengekodan semasa: Dalam fail PHP.ini, anda boleh mencari dua parameter berkaitan berikut

Apa yang perlu dilakukan jika ralat konfigurasi zon waktu PHP berlaku? Apa yang perlu dilakukan jika ralat konfigurasi zon waktu PHP berlaku? Mar 21, 2024 am 08:57 AM

Ralat konfigurasi zon masa PHP adalah masalah biasa Apabila fungsi berkaitan tarikh dan masa terlibat dalam kod PHP, adalah sangat penting untuk mengkonfigurasi zon waktu dengan betul. Jika konfigurasi zon waktu tidak betul, paparan tarikh dan masa mungkin tidak tepat atau masalah lain mungkin berlaku. Menyelesaikan ralat konfigurasi zon waktu PHP memerlukan penetapan zon waktu yang betul dengan menetapkan fungsi date_default_timezone_set(). Berikut ialah contoh kod khusus:

Bagaimana untuk menangani kekurangan PHP-FPM dalam Ubuntu Bagaimana untuk menangani kekurangan PHP-FPM dalam Ubuntu Mar 09, 2024 am 08:42 AM

Dalam sistem Ubuntu, PHP-FPM ialah pengurus proses PHPFastCGI yang biasa digunakan, digunakan untuk mengendalikan program PHP. Walau bagaimanapun, dalam beberapa kes, PHP-FPM mungkin hilang, menyebabkan PHP gagal berjalan dengan betul. Artikel ini akan memperkenalkan cara menangani kekurangan PHP-FPM dalam Ubuntu dan memberikan contoh kod khusus. Penerangan Masalah Apabila memasang PHP dalam sistem Ubuntu dan mendayakan PHP

Bagaimana untuk menukar tetapan pengekodan dalam PHP.ini Bagaimana untuk menukar tetapan pengekodan dalam PHP.ini Mar 26, 2024 pm 03:48 PM

Cara menukar tetapan pengekodan dalam PHP.ini memerlukan contoh kod khusus Dalam pembangunan PHP, pengekodan aksara merupakan isu yang sangat penting. Tetapan pengekodan aksara yang betul memastikan penghantaran dan paparan data yang betul. Fail PHP.ini ialah fail konfigurasi PHP Dengan mengubah suai fail PHP.ini kita boleh membuat beberapa konfigurasi global, termasuk tetapan pengekodan aksara. Di bawah ini kami akan menerangkan secara terperinci cara menukar tetapan pengekodan dalam fail PHP.ini dan melampirkan contoh kod. Langkah 1: Cari PHP.ini

Bagaimana untuk meningkatkan prestasi MySQL melalui konfigurasi PHP Bagaimana untuk meningkatkan prestasi MySQL melalui konfigurasi PHP May 11, 2023 am 09:19 AM

MySQL ialah salah satu pelayan pangkalan data yang paling banyak digunakan pada masa ini, dan PHP, sebagai bahasa pengaturcaraan sebelah pelayan yang popular, aplikasinya biasanya berinteraksi dengan MySQL. Di bawah keadaan beban yang tinggi, prestasi MySQL akan sangat terjejas Pada masa ini, konfigurasi PHP perlu diselaraskan untuk meningkatkan prestasi MySQL dan dengan itu meningkatkan kelajuan tindak balas aplikasi. Artikel ini akan memperkenalkan cara meningkatkan prestasi MySQL melalui konfigurasi PHP. Untuk mengkonfigurasi PHP.ini, anda perlu membuka fail konfigurasi PHP (PHP.ini) dahulu, supaya anda boleh menukar

Konfigurasi dan pengoptimuman PHP dalam persekitaran pelayan Kangle Konfigurasi dan pengoptimuman PHP dalam persekitaran pelayan Kangle Mar 29, 2024 am 08:06 AM

Konfigurasi dan pengoptimuman PHP dalam persekitaran pelayan Kangle ialah perisian pelayan yang stabil dan cekap Banyak tapak web memilih untuk dijalankan dalam persekitaran Kangle. Sebagai bahasa skrip sebelah pelayan yang popular, PHP sering digunakan dengan Kangle. Artikel ini akan memperkenalkan cara mengkonfigurasi dan mengoptimumkan PHP dalam persekitaran pelayan Kangle untuk meningkatkan prestasi dan keselamatan tapak web. 1. Konfigurasi PHP 1. Cari fail php.ini dalam pelayan Kangle Fail konfigurasi PHP biasanya

Bagaimana untuk mengkonfigurasi dan menggunakan Memcache dalam PHP Bagaimana untuk mengkonfigurasi dan menggunakan Memcache dalam PHP Jul 16, 2023 pm 12:27 PM

Cara mengkonfigurasi dan menggunakan Memcache dalam PHP Memcache ialah sistem caching memori yang biasa digunakan yang boleh digunakan untuk mempercepatkan capaian laman web dan mengurangkan tekanan pangkalan data. Mengkonfigurasi dan menggunakan Memcache dalam PHP adalah sangat mudah, langkah terperinci dan contoh kod diterangkan di bawah. Langkah 1: Pasang dan mulakan Memcache Sebelum memulakan, anda perlu memasang dan memulakan Memcache terlebih dahulu dalam sistem anda. Ia boleh dipasang pada Ubuntu melalui: sudoapt-get

Panduan lengkap untuk mengkonfigurasi PHP5.2.17 pada Windows Panduan lengkap untuk mengkonfigurasi PHP5.2.17 pada Windows Mar 05, 2024 am 09:42 AM

Panduan Lengkap untuk Mengkonfigurasi PHP5.2.17 dalam Persekitaran Windows Sebagai bahasa pembangunan web yang digunakan secara meluas, konfigurasi PHP pada platform Windows merupakan salah satu cabaran yang dihadapi oleh banyak pembangun. Artikel ini akan memberikan anda panduan terperinci untuk mengkonfigurasi PHP5.2.17 dalam persekitaran Windows dan memberikan contoh kod khusus untuk membantu anda menyelesaikan proses konfigurasi dengan jayanya. Mula-mula, anda perlu memuat turun pakej pemasangan versi Windows PHP5.2.17 dan mengekstraknya ke direktori yang ingin anda pasang, seperti berikut

See all articles