How to resolve "HttpException: Error 413" (SonarQube)

12,541

Solution 1

Answering my own question. It turned out to be an error in setting the following property in sonar.properties file:

#sonar.web.host=0.0.0.0

Uncommenting and setting to an address means that only clients that have that address can access the sonar qube.

Solution 2

I had the same error where my sonarqube server was behind an nginx proxy.

413 == Request entity too large as @jeroen-heier said.

I applied a change to my nginx configuration like this

server {
  ...
  client_max_body_size 20M;
  ....
}

to allow requests to be 20 megabytes, and that fixed it.

Solution 3

If you run sonar in docker , the default sonar image does not contain nginx server, so there're nothing can do in container

I ran it in k8s, there's a ingress before sonar service, so you should config the ingress and the service

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: sonarqube
  namespace: default
  annotations:
    ingress.kubernetes.io/proxy-body-size: "20M"
spec:
  rules:
...

To get this via the helm chart, add

ingress:
  enabled: true
  annotations:
    ingress.kubernetes.io/proxy-body-size: "20M"

Solution 4

In case you're using nginx-ingress, add nginx.ingress.kubernetes.io/proxy-body-size: "20M" into the annotations:

Share:
12,541

Related videos on Youtube

Mister Tommy Cat
Author by

Mister Tommy Cat

Updated on June 27, 2022

Comments

  • Mister Tommy Cat
    Mister Tommy Cat almost 2 years

    I've recently installed the latest version of Jenkins, SonarQube 6.0 (running on a separate server) and when the Jenkins job attempts to upload sonar scanner results to the SonarQube server, I get the following error:

    'ERROR: Error during Sonar runner execution
    org.sonar.runner.impl.RunnerException: Unable to execute Sonar
    at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:91)
    at org.sonar.runner.impl.BatchLauncher$1.run(BatchLauncher.java:75)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69)
    at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50)
    at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:102)
    at org.sonar.runner.api.Runner.execute(Runner.java:100)
    at org.sonar.runner.Main.executeTask(Main.java:70)
    at org.sonar.runner.Main.execute(Main.java:59)
    at org.sonar.runner.Main.main(Main.java:53)
    Caused by: org.sonarqube.ws.client.HttpException: Error 413 on http://****`
    

    What could be the cause? An error in the sonar-project properties?

    • Jeroen Heier
      Jeroen Heier over 7 years
      See this explanation of HTTP 413. Could you tell something about the project size?
    • Eric Hartmann
      Eric Hartmann over 7 years
      Is SonarQube behing a reverse poxy ? In this case, the configuration may be incorrect. For instance for httpd, if you setup LimitRequestBody parameter (httpd.apache.org/docs/2.4/mod/core.html#limitrequestbody) you have reached this limit.
  • Leon S.
    Leon S. about 7 years
    Tip#1: The http-server is not shown in sonar's configuration files. You can check if your sonar server is using nginx by running sudo server nginx stop and seeing if the url is reachable. Tip#2: In stead of server {} it can also be a http or location block. Look at the documentation for more info.
  • Vighnesh Pai
    Vighnesh Pai about 6 years
    The https 413 error has nothing to do with this! it is something with the size of the payload that needs to be uploaded. If the payload is in kbs, you will not get this error.
  • tdensmore
    tdensmore almost 5 years
    Please remove this as the solution.
  • Mister Tommy Cat
    Mister Tommy Cat almost 5 years
    It was a long time ago since I posted this and from what I remember, configuring sonar.web.host incorrectly caused the 413 http error. Putting it back to the default shown fixed it.
  • Chexpir
    Chexpir about 4 years
    I was about to add this answer to the post....as I had skipped it when reading the post and have spent quite some time looking for a solution!! I should read more slowly! thanks!
  • Marco
    Marco almost 4 years
    @MisterTommyCat based on your last comment I suggest you to edit your initial question, in order to make it clear that even if the 413 error refers to something about exceeding payload, fixing the sonar.web.host parameter fixes the 413 error too.
  • Sankalan Parajuli
    Sankalan Parajuli over 3 years
    This is not the solution
  • Dave Deasy
    Dave Deasy over 2 years
    Please accept one of the other answers