Mam dwa katalogi w/var/www (na przykład/var/www/app1 i/var/www/app2), których dzienniki błędów chcę wysyłać do różnych plików. Oba znajdują się w tej samej domenie, więc nie są w stanie umieścić ich pod różnymi wirtualnymi hostami. Tak więc, na przykład, bym do nich dostęp jako:Serwer Apache - wiele katalogów, różne dzienniki błędów
natknąłem tej strony:
Generate access logs for different subdirectories in Apache
którego rozwiązanie działa idealnie dla dzienników dostępu. Jednak argument "env" nie działa z dyrektywą ErrorLog.
Przed tym „odkrycie”, pracowałem na to, co wydaje się źle:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/app1
<Directory />
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order deny,allow
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/app1/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/app1/access.log combined
</VirtualHost>
jestem nieco zagubiony o tym, co należy robić. Oznacza to, że jeśli istnieje sposób, aby ErrorLog zadziałał, lub powinienem próbować dalej konfigurować wirtualny host dla każdego katalogu. Każda pomoc będzie doceniona! Dziękuję Ci!
Dziękuję za poprawienie błędu "Katalogu"! Jeśli chodzi o ErrorLog, dowiedziałem się, jak działają środowiska do oddzielania dziennika dostępu. Ale nie wydaje się działać dla dziennika błędów. Czy moje zrozumienie jest poprawne? (Kiedy próbuję, pojawia się błąd, gdy Apache analizuje plik konfiguracyjny.) Zgaduję, że masz rację - dziennik błędów dotyczy całego serwera lub hosta wirtualnego. Opierając się na wysłanym łączu, przypuszczam, że inną opcją jest dopisanie każdego wpisu dziennika błędów do skryptu ... Wielkie dzięki za pomoc! – Ray
Tak, przeszukaliśmy to również i wydaje się, że plików ErrorLog nie można oddzielić za pomocą SetEnvIf. Zapraszamy. –