title: Download counter of exe file in PHP
body: <p>I have a problem with counting downloads of file. There will be no problem if a link to the download file would look like this: http:// your.site.domain/download.php?file=filename.exe&amp;customer=ABC_423. However my customer want to count statistics from link like this: http:// your.site.domain/downloadsfolder/ABC_423/filename.exe and also he needs to hotlink that link on other sites. </p>
  
  <p>I think there would be solution in .htaccess file, but I don't know how to make a proper redirect.</p>
  
  <p>My PHP script looks like this:
  <pre class="lang-php prettyprint-override"></p>
  
  <pre><code>session_start();
  define('SERVER_NAME', 'www.siteaddress.domain');
  define('DOWNLOAD_PATH', 'http:// siteaddress.domain/versions/download');
  define('DOWNLOAD_FILE', 'Setup.exe');
  
  $filename = DOWNLOAD_PATH . '/' . $_GET['customer'] . '/' . DOWNLOAD_FILE;
  
  $headers = get_headers($filename);
  
  if ($headers[0] == 'HTTP/1.1 200 OK'){
    // file exists, begin download procedure
    if(isset($_GET['customer'])){
      // begin update statistics
      // mysql query to update specified row
    }
    // headers for downloading file
    header("Content-Type: application/force-download");
    header('Content-Type: application/x-unknown');
    header("Content-Type: application/octet-stream");
    //header("Content-Type: application/download"); // not sure if needed
    header("Content-Disposition: attachment; filename=".basename($filename).";");
    header("Accept-Ranges: bytes");
    header("Content-Transfer-Encoding: binary");
    header("Content-Length: ".remote_filesize(SERVER_NAME, $filename));
    ob_clean();
    flush();
    readfile($filename);
    exit;
  }else{
    echo 'File not found';
    exit;
  }
  </code></pre>
  
  <p></pre></p>