$url = "http://example.com/............."
$ url大約有超過4095個字符。 我需要在PHP訪問此網址,但如果我用file
或file_get_contents
,它返回一個錯誤在php中超過4095個字符的長URLs
我怎樣才能打開或在PHP訪問此網址是什麼?
$url = "http://example.com/............."
$ url大約有超過4095個字符。 我需要在PHP訪問此網址,但如果我用file
或file_get_contents
,它返回一個錯誤在php中超過4095個字符的長URLs
我怎樣才能打開或在PHP訪問此網址是什麼?
它取決於您嘗試訪問的服務器類型。
例如:
阿帕奇:由LimitRequest *限制URL長度,默認情況下它具有8千字節爲URL字符串。
Microsoft Internet Information Server:默認情況下它有16 KB。但它可以改變。
Perl的HTTP ::守護程序:8000個字符爲URL長度和16千字節的HTTP標頭。值可以在Daemon.pm中更改。
這也取決於客戶端... – 2011-06-10 09:30:42
但是沒有客戶端,它是PHP腳本oO還是在PHP conf中有限制嗎? – 2011-06-10 09:38:22
嗨,謝謝。 我嘗試代碼都在Firefox和IE瀏覽器,都返回相同的錯誤「'HTTP/1.0 414錯誤#10068 - HTTP請求行超過4096字符限制」 – haitao 2011-06-10 10:24:28
你的問題不是PHP,它是你的需求的瘋狂。 :)另外;
What is the maximum length of a URL in different browsers?
當然,你想POST,而不是瘋狂的GET。這聽起來更像是系統設計的一個基本問題。
嗨,謝謝,但我不能發表這一點。這是一個通過公司的網址api生成pdf文件的鏈接。他們只是提供GET方法。 – haitao 2011-06-10 10:08:01
然後我認爲你需要給他們寫一封嚴厲的郵件,並要求他們不要製造這樣的垃圾。如果必須的話,你可以用不同的方式表達。 :) – AlexanderJohannesen 2011-06-10 11:52:57
您應該使用POST
代替GET
這樣的數據
嗨,謝謝。但我不能使用POST而不是GET。 感謝您的參考。 Stream上下文可以選擇最大字符長度嗎?我收到了錯誤消息 「'HTTP/1.0 414錯誤#10068 - HTTP請求行超過了4096個字符的限制 Content-Length:71 Date:Fri,10 Jun 2011 10:03 :07格林尼治標準時間 「 – haitao 2011-06-10 10:16:56
如果您從API服務器/服務收到此信息,則表示失敗不在您身邊,而是在您的身上。即他們不接受這樣長的網址,不管用什麼方法,結果都是一樣的。 – mkilmanas 2011-06-10 10:55:10
由於雷蒙德陳曾經寫道:if you have to ask, you're probably doing something wrong。在你的情況下,你應該明確地使用POST而不是GET。由遠程服務器......該服務無法處理網址方面,比字符的表示ammount的不再生成
你得到了錯誤。
如果API依賴GET請求,其目的是要使用你使用它的方式,你的問題是所用的API設計中的錯誤和無關用PHP。如果您無法更改提供API訪問的API或服務,則無法解決此問題
爲什麼嗶聲你會有一個很長的URL? – 2011-06-10 09:24:22
請在出現錯誤時引用* exact *消息。 – 2011-06-10 09:27:38
我沒有一個非常長的URL來嘗試mysel,但是一個Curl請求可以做到這一點嗎? – azzy81 2011-06-10 09:30:11