|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #18183 [RFE] Configurable "User-Agent" in php_fopen_url_wrap_http()
Submitted: 2002-07-05 08:59 UTC Modified: 2005-06-28 23:14 UTC
From: jos_php dot net at interexa dot de Assigned:
Status: Closed Package: Feature/Change Request
PHP Version: 4.1.2 OS: all
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please !
Your email address:
Solve the problem:
46 - 11 = ?
Subscribe to this entry?

 [2002-07-05 08:59 UTC] jos_php dot net at interexa dot de
It would be helpful if the "User-Agent"-String in fopen('http://...') calls would be configurable.

The file affected is ext/standard/http_fopen_wrapper.c, line 180.

Maybe we could define a global variable which is set to "PHP/PHP_VERSION" by default, but can be overwritten. Or an optional parameter to the fopen() function. But would be also useful in include() calls...


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2002-07-05 09:19 UTC]
 [2002-07-05 16:10 UTC]
Maybe a set_user_agent() function?

 [2002-07-05 16:30 UTC]
Why not an ini setting like fopen.user_agent ?

I think we should use the INI infrastructure if we want to make thsi customizeable at all. There's no need to add a new function when we simply can do

  ini_set("fopen.user_agent", "foobar");

We can even query it with ini_get(), means we don't need a get_user_agent() and we can give it a default value like "PHP <version numer>" if it's not set at all.
 [2002-07-05 16:50 UTC]
Markus - i agree.
I totally forgot about INI :-)

 [2002-07-05 18:23 UTC]
I don't think this is really necessary. The fopen wrappers were designed for consistency among different ways of getting data, not to support every little detail of every protocol. If you do need greater control, I suggest using cURL functions.
 [2002-07-06 08:36 UTC] jos_php dot net at interexa dot de
I sure think this is necessary! fopen() or even include() is the easiest way to "tunnel" a website throgh another, but without the ability to use the same agent identifier as the calling browser the called website will send the wrong data if it distingishes between different browsers. The user may get javascript errors for example.
 [2005-06-28 23:14 UTC]
This already exists in PHP 5 via contexts and an ini option.
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Apr 20 00:01:27 2024 UTC