我正在尝试在 Ubuntu 服务器上为我的应用程序设置一个简单的托管环境。
我创建了一个这样的虚拟主机:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName www.example.com
ServerAlias example.com
DocumentRoot /home/owner/example.com/docs
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/owner/example.com/docs/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /home/owner/example.com/logs/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /home/owner/example.com/logs/access.log combined
php_flag log_errors on
php_value error_log /home/owner/example.com/logs/php-error.log
</VirtualHost>
现在,我的问题是 PHP 错误和警告被抛出error.log
- 而不是php-error.log
我所希望的那样。
如何实现这一点?
答案1
确保 apache 用户除了有写入权限之外,还有权创建 /home/owner/example.com/logs/php-error.log 文件。
最有可能的是 /home/owner/example.com/logs/ 目录具有 755 权限,这将阻止 Apache 创建 php-error.log 文件。