error_log pe Virtual Host?

voturi
97

Pe un server Linux care rulează Apache și PHP 5, avem mai multe gazde virtuale cu fișiere jurnal separate. Pare că nu putem să separe PHP error_logîntre gazde virtuale.

Supracomandarea această setare în <Location>DIRECTIVEI httpd.confnu pare să facă nimic.

Există o modalitate de a avea php separat error_logspentru fiecare gazdă virtuală?

Întrebat 01/08/2008 la 19:37
sursa de către utilizator
În alte limbi...                            


11 răspunsuri

voturi
133

Dacă cineva vine în căutarea ar trebui să arate astfel:

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/domains/example.com/html
    ErrorLog /var/www/domains/example.com/apache.error.log
    CustomLog /var/www/domains/example.com/apache.access.log common
    php_flag log_errors on
    php_flag display_errors on
    php_value error_reporting 2147483647
    php_value error_log /var/www/domains/example.com/php.error.log
</VirtualHost>

Acest lucru este de dezvoltare numai deoarece display_erroreste activată. Veți observa că jurnalul de erori Apache este separat de jurnalul de erori PHP. Lucrurile bune este php.error.log.

Uitați-vă aici pentru error_reportingcheia http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting

Publicat 26/08/2010 la 16:29
sursa de către utilizator

voturi
72

Pentru a seta Apache ( nu PHP ) log, cel mai simplu mod de a face acest lucru ar fi de a face:

<VirtualHost IP:Port>
   # Stuff,
   # More Stuff,
   ErrorLog /path/where/you/want/the/error.log
</VirtualHost>

Dacă nu există nici un lider „/“ se presupune a fi relativă.

Eroare Apache Jurnal Pagina

Publicat 01/08/2008 la 20:58
sursa de către utilizator

voturi
12

Eu de obicei , specifica doar acest lucru într - un .htaccessfișier sauvhost.conf pe domeniul la care lucrez. Adăugați acest la unul dintre aceste fișiere:

php_admin_value error_log "/var/www/vhosts/example.com/error_log"
Publicat 02/08/2008 la 02:10
sursa de către utilizator

voturi
8

Comportamentul implicit este pentru error_log () la ieșire la jurnalul de erori Apache. Dacă acest lucru nu se întâmplă verificați setările php.ini pentru Directiva error_log - lăsați-l unset pentru a utiliza fișierul jurnal Apache pentru vhost curent.

Publicat 01/08/2008 la 23:20
sursa de către utilizator

voturi
6

Nu setați error_logunde dvs. syslogchestii merge, eg /var/log/apache2deoarece erorile pe care le vor primi de interceptat ErrorLog. În schimb, creați un subdirîn dumneavoastră dosar de proiect pentru bușteni și de a face php_value error_log "/path/to/project/logs". Acest lucru este valabil pentru ambele .htaccess fișiere și vhosts . De asemenea , asigurați - vă că ați pus php_flag log_errorspe

Publicat 02/04/2010 la 21:50
sursa de către utilizator

voturi
5
php_value error_log "/var/log/httpd/vhost_php_error_log"

Acesta funcționează pentru mine, dar trebuie să se schimbe permisiunea fișierului jurnal.

sau Apache va scrie jurnalul pentru ITS error_log.

Publicat 03/07/2009 la 00:54
sursa de către utilizator

voturi
5

Da, puteți încerca,

php_value error_log "/var/log/php_log" 

în .htaccesssau puteți avea utilizatori utilizați ini_set()la începutul script - uri lor , în cazul în care doresc să aibă logare.

O altă opțiune ar fi pentru a permite scripturi pentru a fi în mod prestabilit php.iniîn dosarul cu script - ul, apoi du - te la folderul rădăcină al utilizatorului / gazdei, apoi la rădăcina serverului, sau ceva similar. Acest lucru ar permite gazdelor să adauge propriile php.inivalori și propriile lor error_loglocații.

Publicat 23/09/2008 la 00:29
sursa de către utilizator

voturi
5

Ați încercat adăugând metoda php_value error_log '/path/to/php_error_logpentru configurația VirtualHost?

Publicat 29/08/2008 la 07:13
sursa de către utilizator

voturi
4

Apache meu a avut ceva de genul asta în httpd.conf. Trebuie doar să schimbați setările ErrorLog și CustomLog

<VirtualHost myvhost:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot /opt/web
    ServerName myvhost
    ErrorLog logs/myvhost-error_log
    CustomLog logs/myvhost-access_log common
</VirtualHost>
Publicat 09/08/2008 la 03:51
sursa de către utilizator

voturi
3

Ai putea încerca:

    <VirtualHost myvhost:80>
       php_value error_log "/var/log/httpd/vhost_php_error_log"
    </Virtual Host>

Dar eu nu sunt sigur dacă va funcționa. Am încercat pe site-urile mele cu nici un succes.

Publicat 23/09/2008 la 00:22
sursa de către utilizator

voturi
0

Creați VirtualHost simplă:

de exemplu, nume de gazdă: - thecontrolist.localhost

  1. C: drivere \ Windows \ system32 \ \ etc

    127.0.0.1 thecontrolist.localhost în fișierul gazde

  2. C: \ xampp \ apache \ conf \ suplimentar \ httpd-vhosts.conf

    <VirtualHost *> ServerName thecontrolist.localhost ServerAlias thecontrolist.localhost DocumentRoot "/xampp/htdocs/thecontrolist" <Directory "/xampp/htdocs/thecontrolist"> Options +Indexes +Includes +FollowSymLinks +MultiViews AllowOverride All Require local </Directory> </VirtualHost>

  3. Nu uitați să reporniți apache - ul. pentru mai multe verifica acest link

Publicat 31/05/2018 la 06:58
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more