Modifying your php.ini settings to the following will allow increased file upload limits:
upload_max_filesize = 50M
post_max_size = 50M
However, if you are using Internet Information Server (IIS), also check that there isn't a requestLimit set in the web.config. Drupal will show that a larger size is allowed via php.ini, but large files won't upload.
Here is the setting to change, on my system it defaulted to 10mbs:
<?xml version="1.0" encoding="UTF-8"?>
<requestLimits maxAllowedContentLength="10485760" />
Changed maxAllowedContentLength to 52428800 and 50mb uploads worked immediately.
Problem: PDFs downloaded from your website do not load on most client machines. Specifically happens with larger PDF files and sporadically happens across browser clients.
Atmosphere: Windows Server 2008 R2 running IIS7.5
Cause: According to this lengthy forum post, Windows Server 2008 changes the byte order for downloaded files that Adobe reader didn't know how to read.
We just discovered our open data wasn't nearly as open as we believed. Turns out for true cross-site requests of JSON data you need to add a HTTP Reponse Header:
The method one uses to do so vary widely by webserver and host. In our case, for IIS7 the simplest method was to configure it in the web.config:
<?xml version="1.0" encoding="utf-8"?> <configuration> <system.webServer> <httpProtocol> <customHeaders> <add name="Access-Control-Allow-Origin" value="*" /> </customHeaders> </httpProtocol> </system.webServer> </configuration>
For more information on the why and how as well as directions for other webservers visit enable-cors.org. The folks behind hacks.mozilla.org also offer a solid overview of Cross-site XmlHttpRequest with CORS. Use the form at http://enable-cors.org/#check to see if your site is CORS enabled.
At this time only IFWIS Core is CORS-Enabled on IDFG's website.
HTTP Redirect seems simple enough. Always was in IIS6 and in IIS7 there's even a button labeled HTTP Redirect that promises relative redirects. It looks like it'll be as easy Apache finally. That is until you try to redirect a querystring. Then everything bombs.
Turns out it still is relatively easy, except you have to know that Microsoft changed $S$Q to $V$Q. Why? $Ss and $Gs I suspect.
In our example we'll redirect all pages under http://olddomain.com/content to http://mydomain.com/content.
- Pick the virtual directory you want to redirect. e.g. http://olddomain.com/content
- Click HTTP Redirect under IIS in the IIS management console.
- In the HTTP Redirect Dialog:
- Check Redirect requests to this destination
- Enter your new path ending with $V$Q. e.g. http://mydomain.com$V$Q
- Counter-intuitively check Redirect all request to exact destination (instead of relative destination)
- Choose the appropriate Status Code (Permanent or Temporary)
- Apply Changes and Test
What is this?
We use the IFWIS Blog to keep our staff, cooperators and the public updated on what we are working on, what's new and share tips about using our software and website.
The content of the IFWIS Blog is often highly technical, but we try our best to keep our posts accessible and jargon-free. When this is not possible, we'll link to other resources online to provide background. Thanks for reading and please follow our blog for updates.
- IFWIS RSS Feed
- Daily Email Digest (All Public Content)
- Or follow just one of the many topic-specific tag feeds or pages below.