After upgrading to Mavericks, I ran into an issue where I couldn’t print from a site that used a Silverlight-based Web app. In particular, when I tried to use ‘Open as PDF’ or ‘Save as PDF’ from the Print dialog box, instead of getting a nice PDF, I’d get bupkis. Zip. The big goose egg.
It turns out that this is due to the new sandboxing rules that Apple implemented for Safari plug-ins. The feature is intended to keep you safe from security exploits that affect plug-ins, but it can result in unintended side effects—such as, in my case, not being able to print.
After a lot of searching, I finally came across the solution, suggested by this post at Microsoft’s Developer Network. You can tell Safari to let you run certain plug-ins in “unsafe” mode; sounds scary, yes, but fortunately you can enable that mode on a plug-in by plug-in basis, and only for specific sites that you designate.
So the next time you’re visiting a problematic site, fire up System Preferences in Safari, go to the Security pane, and click on Manage Website Settings. On the left, select the plug-in in question—in my case, Silverlight—and you’ll see a list of currently open websites that are using that plug-in. From the drop-down menu next to that specific site, choose Run in Unsafe Mode. You’ll be warned that this means that the plug-in on this site can access your personal documents and data, but forge ahead and click Trust.
Now, quit and relaunch Safari, and revisit the site in question. (This forces Safari to reload the plug-in in its new, unsafe mode.) If the plug-in sandboxing was indeed the culprit, you may find that your woes are now cured.
Of course, it should go without saying that you should follow this procedure only for sites that you’re sure you can trust. By and large, the Safari’s sandboxing features help keep your data safe; but if you’re running into problems where even trusted sites aren't working as they should, this solution might save you some hair-tearing.