mod_security: não é possível fazer upload de arquivos/ativos grandes

Saiba como fazer upload de arquivos/ativos grandes atualizando para a versão mais recente do mod_security.

Descrição description

Ambiente

  • mod_security (versão 9)

  • Adobe Experience Manager/Adobe Managed Services

Problema/Sintomas

A versão 9 do mod_security não pode fazer upload de arquivos/ativos grandes. Eles devem ser carregados navegando diretamente para o autor (ignorando o dispatcher).

Os usuários veem o seguinte no error.log:

28.02.2023 21:41:25.614 ERROR [ 10.153.112.170 [ 1677620485463]  POST /content/dam/test/folder/location/test.createasset.html HTTP/1.1]


com.day.cq.dam.api.AssetManager createAsset: repository exception while creating asset [ /content/dam/test/folder/location/test/largefile.psd]


javax.jcr.RepositoryException: java.io.IOException: org.apache.jackrabbit.core.data.DataStoreException: Error in adding record


....



Caused by: org.apache.jackrabbit.core.data.DataStoreException: Error in adding record


at org.apache.jackrabbit.oak.plugins.blob.AbstractSharedCachingDataStore.addRecord(AbstractSharedCachingDataStore.java:265)


at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.addRecordInternal(DataStoreBlobStore.java:821)


at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.writeStream(DataStoreBlobStore.java:922)


at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.writeBlob(DataStoreBlobStore.java:320)


... 183 common frames omitted


Caused by: org.eclipse.jetty.io.EofException: Early EOF


at org.eclipse.jetty.server.HttpInput$3.getError(HttpInput.java:1207)


at org.eclipse.jetty.server.HttpInput$3.noContent(HttpInput.java:1195)

O seguinte é visto no log do dispatcher:

[ Fri Feb 17 15:34:24 2023]  [ W]  [ pid 31743 (tid 140548617275136)]  Spooling request body failed: expected 146851652 bytes, but only 134222982 received.


[ Fri Feb 17 20:51:29 2023]  [ W]  [ pid 31832 (tid 140548476221184)]  Spooling request body failed: expected 155287797 bytes, but only 134222313 received.


[ Fri Feb 17 20:55:14 2023]  [ W]  [ pid 31972 (tid 140548417472256)]  Spooling request body failed: expected 155287797 bytes, but only 134224609 received.


[ Fri Feb 17 21:07:22 2023]  [ W]  [ pid 31833 (tid 140548367116032)]  Spooling request body failed: expected 155287797 bytes, but only 134224235 received.


[ Fri Feb 17 21:40:11 2023]  [ W]  [ pid 31972 (tid 140548451043072)]  Spooling request body failed: expected 155287797 bytes, but only 134225743 received.

O seguinte é visto no log do Apache:

[ Thu Mar 02 17:54:44.454373 2023]  [ :error]  [ pid 31247]  [ client 192.150.5.2:3938]  [ client 192.150.5.2]  ModSecurity: Request body (Content-Length) is larger than the configured limit (13107200). [ hostname "author-tenantid-prd.adobecqms.net"]  [ uri "/content/dam/ams.createasset.html"]  [ unique_id "ZADi5Cg1H-z9TKaQ1q6djwAAAAM"] , referer:https://author-tenantid-prd.adobecqms.net/assets.html/content/dam/ams

Resolução resolution

Atualize para a versão mais recente do mod_security.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f