Tridion 2011 SP1 HTTPS Publishing throwing 'Post size exceeded allowed limits'

18

I'm currently republishing a site that's been migrated from 5.2 to 2011 SP1 HR1.

The main change is that we're now using HTTPS publishing.

However, this has now raised an issue whereby some pages are now failing with the following error in during the Transport phase.

Transport failed: Could not transport tcm_[tcmid].Content.zip using HTTPS, cause: Internal Server Error

Looking at the server logs, the HTTPS publisher website is throwing the following error (cut down for ease of viewing):

Event Code: 3004 Event Message: Post size exceeded allowed limits

On a normal .Net application, I would update the maxRequestLength value of the httpRuntime element in the web.config

eg <httpRuntime maxRequestLength="102400" executionTimeout="300"/>

However as the HTTPS publisher doesn't have a web.config, I'm unsure where I'd need to make that change.

I have updated the MaxSize property of the HTTPSReceiver element of the cd_deployer_conf.xml and restarted the service which fixed a 'Request Entity Too Large' issue I was also having, but has not solved this issue.

Any help gratefully received.

Mike Percival

Posted 2013-03-08T15:24:32.203

Reputation: 367

Answers

24

You may have to create a web.config file in the root of the HTTPUpload web application. Here is an example web.config that I've used in the past:

PLEASE NOTE: One of these values is in kilobytes, and the other in bytes - Pesky Microsoft!

<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">         
    <system.web>
        <!-- This value is in **kilobytes** -->
        <!-- 512000 kilobytes = 500MB -->
        <httpRuntime executionTimeout="1200" maxRequestLength="512000" useFullyQualifiedRedirectUrl="false" minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100"/>
    </system.web>

    <system.webServer>
        <security>
        <requestFiltering>
            <!-- This is the value in **bytes** -->
            <!-- 524288000 bytes = 500MB -->
            <!-- The maximum for this is 4,294,967,295 (3.99GB) - http://stackoverflow.com/questions/4022434/-->
            <requestLimits maxAllowedContentLength="524288000" />
        </requestFiltering>
        </security>
    </system.webServer>    
</configuration>

You may have to increase the HTTPSReceiver value in the deployer config too:

<HTTPSReceiver MaxSize="524288000" Location="D:\tridion\incoming" InProcessDeploy="true"/>

Jonathan Williams

Posted 2013-03-08T15:24:32.203

Reputation: 12 464

1Cheers mate - works a treat. Is this the Tridion supported solution or just something you've done to get it to work in the past? – Mike Percival – 2013-03-08T17:14:08.620

Thanks for confirming that it works. Yes, I think that this is the solution that Tridion Support recommend. It was certainly the recognised solution on the Tridion forums back in the day. – Jonathan Williams – 2013-03-08T17:22:45.560

1Just spotted that this is actually listed as the tip of the month in this month's newsletter that arrived in my inbox today. Spooky! – Mike Percival – 2013-03-08T17:42:27.463