Request-URI Too Large [duplicate]

2019-02-16 13:21发布

This question already has an answer here:

Got this error on a big $_GET query in size ~9 000 symbols (they are divided into ~10 variables).

Request-URI Too Large

The requested URL's length exceeds the capacity limit for this server.

What is a workaround for this problem?

3条回答
我命由我不由天
2楼-- · 2019-02-16 14:08

This worked for me (it needs formData support):

<script>
  //Load form
  var formData = new FormData();
  formData.append("param_name1", "param_content1");
  formData.append("param_name2", "param_content2"); 
  formData.append("param_nameN", "param_contentN"); 

  //Send form via AJAX
  var xhr = new XMLHttpRequest();
  xhr.open("POST", YOUR_URL);  
  xhr.send(formData);
</script>
查看更多
爷、活的狠高调
3楼-- · 2019-02-16 14:08

Well an URI actually have a character limit depending on several things. You can check it out at

One workaround is to use POST instead of GET if you are the one developing the server too.

查看更多
迷人小祖宗
4楼-- · 2019-02-16 14:26

There is no workaround if you want pass all these info with GET without change server configuration.

Other solutions:

  • Use POST with a form (or an hidden form and add onclick event at your link that submit it)
  • Use Session. When the server generates the link, store it in $_SESSION with an unique id (or RID, it can be md5 of complete URI) and pass it via GET.
  • Use Database or file storage (with the same procedure of session)
查看更多
登录 后发表回答