Документы сервера Apache являются Вашим другом: http://httpd.apache.org/docs/2.1/mod/mod_log_config.html#customlog
Записи CustomLog или в глобальной области видимости или в виртуальных хостах. В Ubuntu у Вас должны быть доступные сайтам и поддерживающие сайты каталоги. Если Вы не используете виртуальные хосты, это должно войти/etc/apache2/sites-availabe/default файл
Насколько я могу сказать, Вы не можете сделать пользовательских журналов на каталог, но это не должно слишком трудно относиться к тому, что Вы используете для парсинга апачских журналов
Вы уделили какое-либо внимание использованию веб-платформы, чтобы обработать загрузки и также зарегистрировать те загрузки к базе данных? Apache кажется громоздким для этого.
Вот пример в Myna, но можно сделать что-то подобное в PHP, ColdFusion, и т.д.:
ссылка в качестве примера:
download.sjs страница:
// assumes a table a called "downloads" in the database "my_app"
// also assumes that the user has authenticated and has auth cookie
var downloads = new Myna.DataManager("my_app").getManager("downloads")
//clean the filename
var filename = $req.rawData.f.replace(/\.\.\//g,"");
//get the data...should really check for failure here
var data = new Myna.File("file:/var/files/" + filename).readBinary();
//log the download to the DB
downloads.create({
userid:$cookie.getAuthUserId(),
filename:f,
ts:new Date()
})
//send the binary data to the browser
$res.prinBinary(data,"application/octet-stream",filename);
Вы можете использовать прокси-сервер apache для порта 8080 за вас. Настройте nginx на прослушивание порта 8080. Создайте виртуальный хост, который будет отвечать на имя nodejs.sandbox.net, и настройте его в качестве прокси для порта 8080.
<VirtualHost *:80>
ServerName nodejs.sandbox.net
ProxyRequests Off
<Proxy *>
Order deny,allow
allow from all
</Proxy>
ProxyPreserveHost On
ProxyPass / http://sandbox.net:8080
ProxyPassReverse / http://sandbox.net:8080
ProxyErrorOverride Off
ErrorDocument 404 /notavail.html
</VirtualHost>