My experience is that wax is best, especially long-term, but the same waterproofing spray used on clothing and furniture can also work very well on canvas. I've used it on canvas hunting coats, and on canvas messenger bags, and a friend even used it on a canvas tent.