1. Yol.
<?php
$dosyadi = "sitemap.xml.gz"; //görünecek dosya adı
$orjsitemap = "sitemap.xml"; //sıkıştırılmamış sitemap
$veri = file_get_contents($orjsitemap); 
$ziplenenveri = gzencode($veri);
header("Content-type: application/x-gzip");
header("Content-Length: " . strlen($ziplenenveri));
header('Content-Disposition: inline; filename="' . $dosyadi . '"');
die($ziplenenveri);
?>
.htaccess den sitemap.xml.gz'yi bu kodlari yazacagınız php dosyasina rewrite ederseniz ftp'den normal dosya gibi indirir.
örnek htaccess, örnek php dosya adi sitemapgz.php
RewriteRule ^sitemap.xml.gz$ sitemapgz.php
2. Yol - Ftp'ye kayit etmek
<?php
$dosyadi = "sitemap.xml.gz"; //ftp kaydedilecek dosya adı
$orjsitemap = "sitemap.xml"; //sıkıştırılmamış sitemap
$veri = file_get_contents($orjsitemap);
$ziplenenveri = gzencode($veri);
$fh = fopen("$dosyadi", "w"); 
fwrite($fh,$ziplenenveri);
fclose($fh);
?>
2. Yolu belirli peryodlarda calistirarak sıkıştırabilirsiniz. otomatik ftp'ye kaydeder..