Apache 로그 줄에는 "..."이 포함되어 있습니다.

Apache 로그 줄에는 "..."이 포함되어 있습니다.

분석되는 Apache 로그에 대한 사용자 정의 로그 줄 형식이 있습니다.

CustomLog "|/usr/sbin/rotatelogs -l /mnt/var/log/apache2/access-%Y%m%d%H%M%S.log 900" "%a %{%s}t \"% 아르 자형\""

그런데 일부 로그 줄은 어떤 이유에서인지 "..."로 이상하게 단축되어 있는데 어떻게 이럴 수 있습니까? 이 문제가 발생하는 곳에서 발견된 가장 짧은 길이의 줄은 317자이고 가장 긴 줄은 2000자를 훨씬 넘습니다.

"get /exposupe get /exposure s=&ap=0x0&fv=win%2010,0,22,87&si=ih95vduavlj0&pt=lage%20hjemmelaget%20Sengegavl%20-90forum%20-%20DiskusJon.NOIV=UT=1124X600&ct=680&ct=680&ct=680&ct=680&ct=6000 http%3A//www.diskusjon.no/index.php%3Fshowtopic%3D1011139&l...AS3&an=NO%20-%20180x500%20Pretail%20CPC&wd=1024x483&rf=http%3A//www.google.no/search%3Fhl %3Dno%26source%3Dhp%26q%3Dsengegavl+lage%26meta%3D%26aq%3D2%26aqi%3Dg10%26aql%3D%26oq%3Dsengega%26gs_rfai%3D&ui=3INYF5QAZL10&ws=0x417&ad=180x500&sa= HTTP/ 1.1"

답변1

보다어느~의이것들 질문.

GET URI는 일반적으로 255자를 초과할 수 없습니다. 그보다 더 많은 정보를 보내야 하는 경우 POST를 사용하세요. 더 긴 URI를 사용하면 로그의 줄임표, 프록시 문제, 극단적인 경우 414 오류 등 모든 종류의 혼란이 발생합니다.

답변2

어떻게 알 수 있나요?아파치URL이 잘리고 있나요? 사용자 세션 중에 이러한 내용이 표시됩니까? 더 간단한 대답은 누군가가 너무 긴 URL을 다른 사람에게 이메일로 보내면 줄임표로 렌더링되고 사용자는 줄임표가 있는 URL을 잘라내어 붙여넣는 것입니다. . .

하지만 그렇습니다. 저는 이 문제에 대해 Chris와 함께 있습니다. 실제 문제는 URL이 너무 길고 아마도 Apache가 아닌 무언가가 URL을 잘리고 있다는 것입니다. 올바른 해결책은 이상한 잘림 문제가 발생하지 않는 더 짧은 URL을 지원하도록 소프트웨어를 관리하는 것입니다.

관련 정보