2012-09-27 40 views
0

所以,我在Symfony2中開發了一個簡單的URL縮寫器 - 所需要的一件事是輸入必須是有效的URL。爲什麼Symfony2 URL驗證程序跳過TLD?

所以我已經設置了一切,它已被驗證,但它不驗證頂級域名!它將通過諸如「A」之類的東西作爲有效的域名!

發生了什麼事?

+2

所以你不認爲'http:// localhost'應該通過?諸如'http:// somedomain.a'或'http:// x' **之類的東西是完全有效的URI **。這就是它通過驗證的原因。雖然它不是重複的,但您可以閱讀[這個答案](http://stackoverflow.com/a/12170188/895378)瞭解更多有關URI驗證的內容。 – rdlowrey

+0

「A」是有效的域名。如果我將本地DNS設置爲將http:// a重定向到127.0.0.1,並且如果將我的Apache(或任何可以使用的服務器)VHOST設置爲爲域「A」提供某些文件 - 那裏有什麼錯誤? –

+0

所以像「http:// google /」這樣的東西應該直接指向一個網站,然後顯然,因爲我一直都知道 - 你會從中得到一個錯誤。 –

回答