Is there a method for crushing or compressing svg graphics for the web. Hmm...
yes - as Nicu said - save it as plain SVG (to remove all the inkscape specific markup) and then gzip it and move the .svg.gz to a .svgz file. This should make it a lot smaller. Being XML with a lot of elements and attributes repeated it should be at least a quarter to a fifth of the original filesize. Don't forget to set index.svgz as a DirectoryIndex option if you are doing SVG only webpages.
The other method, like Nicu said, is to configure your webserver with mod_deflate. Here is an example apache configuration for mod_deflate:
#this is to see the compression ratio in the logfile LogFormat "%h %l %u %t "%r" %>s %b \ "%{Referer}i" "%{User-Agent}i" (%{ratio}n%%)" combined CustomLog /var/log/apache2/cartonet.access_log "combined"
<Directory "/some/path"> SetOutputFilter DEFLATE AddOutputFilterByType DEFLATE image/svg+xml text/plain text/html # Don't compress already compressed images SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png|gz)$ no-gzip dont-vary </Directory>
mod_deflate is a little, but not huge additional burden for your webserver but it considerably speeds up loading of SVG files, if you don't do it by hand. It is especially useful for dynamically generated SVG content, such as maps, business graphics, etc.
Andreas