# Retiring PHP's Mirror Program

- Thread: https://externals.io/message/104533
- Original archive: https://news-web.php.net/php.internals/104533
- Started by Derick Rethans on 2019-02-27T16:27:50+00:00
- Messages: 14
- Reply by email to internals@lists.php.net
- More for agents: search with https://externals.io/search.md?q={query} · RFCs at https://externals.io/rfc.md · JSON API at https://externals.io/api · documentation at https://externals.io/llms.txt

---

## #104533 — Derick Rethans — 2019-02-27T16:27:50+00:00

URL: https://externals.io/message/104533#104533

Hi!

The PHP.net website has in the last 20 years made use of an extensive
network of mirrors_ to make the PHP documentation available, and
distribute source tarballs_. These mirrors have been maintained by
members and companies in the PHP eco-system for many valuable years.
However, the administration of the mirror system is often haphazard,
with few contributors helping out—PHP is Open Source, and this is simply
how these things can go.

Maintaining the mirrors is now no longer sustainable, and also hinders
the take up of moving the PHP.net website fully to HTTPS. Because the
PHP.net team has no access to the mirror servers, we also can't make
sure the mirrors are up-to-date, and some mirrors are still running PHP
5.3 (actually, about 25% still run PHP 5.3!).

It is likely no longer necessary to have a mirror system in place, as
unlike 20 years ago, it is not nearly has hard as setting up a
distributed cache system. As a matter of fact, some of the PHP.net web
site, through http://www.php.net/, already sits behind a Content
Delivery Network (CDN) from Myra_, which is sponsored by long time PHP
contributor Sascha Schumann.

With these preliminaries out of the way, I would therefore like to
announce the discontinuation of PHP.net's mirroring program. Instead of
having mirrors, we are moving all of PHP.net to HTTPS (and get rid of
https://secure.php.net), and move them behind Myra's CDN, with the same
local content delivery opportunities, but at significantly less
administration requirements.

In the next week or so, I will e-mail out a plan on which steps are
necessary for this move. I'd be happy to hear any comments on when the
plan comes out.

To end this email, I would very much like to thank all the mirror
maintainers for their dedication, time, and bandwidth over all these
years. Thanks!

cheers,
Derick

.. _mirrors: http://php.net/mirrors.php
.. _tarballs: http://uk3.php.net/downloads.php
.. _Myra: https://myracloud.com/en/

-- 
https://derickrethans.nl | https://xdebug.org | https://dram.io
Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
or become my Patron: https://www.patreon.com/derickr
twitter: @derickr and @xdebug

---

## #104534 — Bhavin Chandarana - IndiaLinks — 2019-02-27T17:30:28+00:00

URL: https://externals.io/message/104533#104534

Its sad to see that mirror program is being discontinued.  

It has been our honour to be part of PHP network and community.

Technology has indeed advanced. Every country has better internet infrastructure and bandwidth.  CDN of course, does the magic :)

I will be glad to provide any assistance anytime, if required.

Best wishes...

Bhavin Chandarana
IndiaLinks Web Hosting Pvt Ltd


> 
> 
> Hi!
> 
> The PHP.net website has in the last 20 years made use of an extensive
> network of mirrors_ to make the PHP documentation available, and
> distribute source tarballs_. These mirrors have been maintained by
> members and companies in the PHP eco-system for many valuable years.
> However, the administration of the mirror system is often haphazard,
> with few contributors helping out—PHP is Open Source, and this is simply
> how these things can go.
> 
> Maintaining the mirrors is now no longer sustainable, and also hinders
> the take up of moving the PHP.net website fully to HTTPS. Because the
> PHP.net team has no access to the mirror servers, we also can't make
> sure the mirrors are up-to-date, and some mirrors are still running PHP
> 5.3 (actually, about 25% still run PHP 5.3!).
> 
> It is likely no longer necessary to have a mirror system in place, as
> unlike 20 years ago, it is not nearly has hard as setting up a
> distributed cache system. As a matter of fact, some of the PHP.net web
> site, through http://www.php.net/, already sits behind a Content
> Delivery Network (CDN) from Myra_, which is sponsored by long time PHP
> contributor Sascha Schumann.
> 
> With these preliminaries out of the way, I would therefore like to
> announce the discontinuation of PHP.net's mirroring program. Instead of
> having mirrors, we are moving all of PHP.net to HTTPS (and get rid of
> https://secure.php.net), and move them behind Myra's CDN, with the same
> local content delivery opportunities, but at significantly less
> administration requirements.
> 
> In the next week or so, I will e-mail out a plan on which steps are
> necessary for this move. I'd be happy to hear any comments on when the
> plan comes out.
> 
> To end this email, I would very much like to thank all the mirror
> maintainers for their dedication, time, and bandwidth over all these
> years. Thanks!
> 
> cheers,
> Derick
> 
> .. _mirrors: http://php.net/mirrors.php
> .. _tarballs: http://uk3.php.net/downloads.php
> .. _Myra: https://myracloud.com/en/
> 
> -- 
> https://derickrethans.nl | https://xdebug.org | https://dram.io
> Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
> or become my Patron: https://www.patreon.com/derickr
> twitter: @derickr and @xdebug

---

## #104716 — Levi Morrison — 2019-03-14T15:37:27+00:00

URL: https://externals.io/message/104533#104716

Any update on this? One commonly requested feature on the downloads
page can be implemented once the mirrors are gone, which is to
directly link to to the file (instead of a Choose a Mirror page).


>
> Hi!
>
> The PHP.net website has in the last 20 years made use of an extensive
> network of mirrors_ to make the PHP documentation available, and
> distribute source tarballs_. These mirrors have been maintained by
> members and companies in the PHP eco-system for many valuable years.
> However, the administration of the mirror system is often haphazard,
> with few contributors helping out—PHP is Open Source, and this is simply
> how these things can go.
>
> Maintaining the mirrors is now no longer sustainable, and also hinders
> the take up of moving the PHP.net website fully to HTTPS. Because the
> PHP.net team has no access to the mirror servers, we also can't make
> sure the mirrors are up-to-date, and some mirrors are still running PHP
> 5.3 (actually, about 25% still run PHP 5.3!).
>
> It is likely no longer necessary to have a mirror system in place, as
> unlike 20 years ago, it is not nearly has hard as setting up a
> distributed cache system. As a matter of fact, some of the PHP.net web
> site, through http://www.php.net/, already sits behind a Content
> Delivery Network (CDN) from Myra_, which is sponsored by long time PHP
> contributor Sascha Schumann.
>
> With these preliminaries out of the way, I would therefore like to
> announce the discontinuation of PHP.net's mirroring program. Instead of
> having mirrors, we are moving all of PHP.net to HTTPS (and get rid of
> https://secure.php.net), and move them behind Myra's CDN, with the same
> local content delivery opportunities, but at significantly less
> administration requirements.
>
> In the next week or so, I will e-mail out a plan on which steps are
> necessary for this move. I'd be happy to hear any comments on when the
> plan comes out.
>
> To end this email, I would very much like to thank all the mirror
> maintainers for their dedication, time, and bandwidth over all these
> years. Thanks!
>
> cheers,
> Derick
>
> .. _mirrors: http://php.net/mirrors.php
> .. _tarballs: http://uk3.php.net/downloads.php
> .. _Myra: https://myracloud.com/en/
>
> --
> https://derickrethans.nl | https://xdebug.org | https://dram.io
> Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
> or become my Patron: https://www.patreon.com/derickr
> twitter: @derickr and @xdebug

---

## #104722 — Mark Scholten — 2019-03-14T18:01:24+00:00

URL: https://externals.io/message/104533#104722

Hello,

A timeline would be nice and information on if locally mirroring it (on an internal hostname) will still be possible.

Also it would be nice to know if you will be contacting the rsync mirror maintainers and what you want to do with them.

I've said before and I will repeat again: let me know where I can help and if possible I will.

Kind regards,

Mark Scholten

> -----Original Message-----
> From: Levi Morrison [mailto:levim@php.net]
> Sent: Thursday, March 14, 2019 16:37
> To: Derick Rethans
> Cc: PHP Developers Mailing List; PHP Mirrors ML
> Subject: Re: [PHP-DEV] Retiring PHP's Mirror Program
> 
> Any update on this? One commonly requested feature on the downloads
> page can be implemented once the mirrors are gone, which is to
> directly link to to the file (instead of a Choose a Mirror page).
> 
> 
> > […]
> same
> > […]

---

## #104726 — Derick Rethans — 2019-03-14T19:46:38+00:00

URL: https://externals.io/message/104533#104726

Hi,

The plan is to start rolling this out somewhere in the next two weeks, 
pending solving the problem of not 404ing the xx.php.net URLs. What I 
would like to do is, to 301 redirect these to the canonical URLs so that 
search indexes etc can get updated over time. But, I don't quite know 
where to host that service. Turning off the mirror scripts etc is going 
to be trivial to do, and our CDN is already set-up to do php.net and 
www.php.net (but doesn't get the later traffic yet). I think we want to 
scale down our mirroring infrastructure alltogether, although I see a 
use for companies being able to run internal mirrors. I do think we 
should not have multiple rsync mirrors though. Let me know what you 
think and your opinions are.

cheers,
Derick



> Hello,
> 
> A timeline would be nice and information on if locally mirroring it (on an internal hostname) will still be possible.
> 
> Also it would be nice to know if you will be contacting the rsync mirror maintainers and what you want to do with them.
> 
> I've said before and I will repeat again: let me know where I can help and if possible I will.
> 
> Kind regards,
> 
> Mark Scholten
> 
> > […]
> 
> 
> --
> 
> 
> 

-- 
https://derickrethans.nl | https://xdebug.org | https://dram.io
Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
or become my Patron: https://www.patreon.com/derickr
twitter: @derickr and @xdebug

---

## #104973 — Derick Rethans — 2019-03-28T11:39:06+00:00

URL: https://externals.io/message/104533#104973

Hi Jaime,

I think we can do something like that. Thanks for the support!

cheers,
Derick



> Hello team!
> 
> I've been happily sponsoring 3 mirrors in 3 countries for several years.
> 
> It feels a bit sad to see the mirror program go away. I will be happy to provide any further support to the best of my capacity.
> 
> Would you consider having a page for former mirror maintainers to mention them all? Something like a wall of former sponsors.
> 
> Several open source projects rely on mirrors to offer downloads and for many of them it's kind of a business card to show which other projects I (we) are supporting already, so having a reference back from PHP.net would be really nice to have. Plus, to be honest, a link back is always appreciated. : - )
> 
> Thanks again!
> 
> All the best,
> 
> Jaime Andres
> 
> ________________________________
> De: Derick Rethans <derick@php.net>
> Enviado: jueves, 14 de marzo de 2019 20:46
> Para: Mark Scholten
> Cc: 'PHP Developers Mailing List'; 'PHP Mirrors ML'
> Asunto: RE: [PHP-DEV] Retiring PHP's Mirror Program
> 
> Hi,
> 
> The plan is to start rolling this out somewhere in the next two weeks,
> pending solving the problem of not 404ing the xx.php.net URLs. What I
> would like to do is, to 301 redirect these to the canonical URLs so that
> search indexes etc can get updated over time. But, I don't quite know
> where to host that service. Turning off the mirror scripts etc is going
> to be trivial to do, and our CDN is already set-up to do php.net and
> www.php.net<http://www.php.net> (but doesn't get the later traffic yet). I think we want to
> scale down our mirroring infrastructure alltogether, although I see a
> use for companies being able to run internal mirrors. I do think we
> should not have multiple rsync mirrors though. Let me know what you
> think and your opinions are.
> 
> cheers,
> Derick
> 
> 
> 
> > […]
> 
> --
> https://derickrethans.nl | https://xdebug.org | https://dram.io
> Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
> or become my Patron: https://www.patreon.com/derickr
> twitter: @derickr and @xdebug
> 

-- 
https://derickrethans.nl | https://xdebug.org | https://dram.io
Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
or become my Patron: https://www.patreon.com/derickr
twitter: @derickr and @xdebug

---

## #104974 — Derick Rethans — 2019-03-28T11:53:07+00:00

URL: https://externals.io/message/104533#104974

Hi,

Just an update: our CDN now accepts mirror URLs as well, so we can 
potentially start swapping DNS. I would like to do that a country at a 
time. Mark, would you mind if I do that with nl1.php.net (and nl3) 
first? 

Actually, that already happens :-)

$ wget http://nl1.php.net/

--2019-03-28 11:50:16--  http://nl1.php.net/
Resolving nl1.php.net (nl1.php.net)... 185.85.0.29
Connecting to nl1.php.net (nl1.php.net)|185.85.0.29|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://php.net/ [following]

--2019-03-28 11:50:16--  https://php.net/
Resolving php.net (php.net)... 185.85.0.29, 2a02:cb40:200::1ad
Connecting to php.net (php.net)|185.85.0.29|:443... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://www.php.net/ [following]

--2019-03-28 11:50:16--  https://www.php.net/
Resolving www.php.net (www.php.net)... 185.85.0.29, 2a02:cb40:200::1ad
Connecting to www.php.net (www.php.net)|185.85.0.29|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]

I guess Sascha changed it.

cheers,
Derick



> Hi,
> 
> The plan is to start rolling this out somewhere in the next two weeks, 
> pending solving the problem of not 404ing the xx.php.net URLs. What I 
> would like to do is, to 301 redirect these to the canonical URLs so that 
> search indexes etc can get updated over time. But, I don't quite know 
> where to host that service. Turning off the mirror scripts etc is going 
> to be trivial to do, and our CDN is already set-up to do php.net and 
> www.php.net (but doesn't get the later traffic yet). I think we want to 
> scale down our mirroring infrastructure alltogether, although I see a 
> use for companies being able to run internal mirrors. I do think we 
> should not have multiple rsync mirrors though. Let me know what you 
> think and your opinions are.
> 
> cheers,
> Derick
> 
> 
> 
> > […]
> 
> 

-- 
https://derickrethans.nl | https://xdebug.org | https://dram.io
Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
or become my Patron: https://www.patreon.com/derickr
twitter: @derickr and @xdebug

---

## #104975 — Sascha Schumann — 2019-03-28T11:56:52+00:00

URL: https://externals.io/message/104533#104975

Hi Derick,

there is no * or nl1 record in the php.net zone, so I cannot change it.

I guess that it is done on the easydns side.

Cheers
Sascha

---

## #104977 — Derick Rethans — 2019-03-28T12:08:02+00:00

URL: https://externals.io/message/104533#104977

> Hi Derick,
> 
> there is no * or nl1 record in the php.net zone, so I cannot change it.
> 
> I guess that it is done on the easydns side.

There is a nl1 record in our zone that we generate from our master 
database with the /local/systems/maintain-master-dns.php script on 
master.php.net

This puts the /local/mirrors/php-master-web/fetch/php.net.zone on the 
master.php.net filesystem:

…
nl IN A 94.142.242.175
nl1.php.net. IN CNAME php.streamservice.nl.
nl IN A 94.142.242.175
nl3.php.net. IN CNAME php.nederland.net.
…

And EasyDNS fetches that zone file I believe.
So I guess we (I) need to modify that script to not CNAME these to the 
respective mirrors, but instead to star-php-net.ax4z.com. instead? I can 
work on that (tomorrow).

cheers,
Derick
-- 
https://derickrethans.nl | https://xdebug.org | https://dram.io
Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
or become my Patron: https://www.patreon.com/derickr
twitter: @derickr and @xdebug

---

## #104979 — Sascha Schumann — 2019-03-28T12:24:56+00:00

URL: https://externals.io/message/104533#104979

> So I guess we (I) need to modify that script to not CNAME these to the 
> respective mirrors, but instead to star-php-net.ax4z.com. instead? I can 
> work on that (tomorrow).

Sounds good.

Sascha

---

## #105027 — Derick Rethans — 2019-04-01T11:49:22+00:00

URL: https://externals.io/message/104533#105027

Hi,

I've just pushed the changes to the PHP website live, and fixed the 
apache config on php-web3, as it still had "php.net" as ServerName and 
"www.php.net" as ServerAlias — I did commit that to the local GIT 
repo.

Things seem to look fine, so are you OK with my switching away DNS from 
the mirrors in the mid-afternoon (15:00 BST)?

cheers,
Derick



> > […]
> 
> Sounds good.
> 
> Sascha
> 

-- 
https://derickrethans.nl | https://xdebug.org | https://dram.io
Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
or become my Patron: https://www.patreon.com/derickr
twitter: @derickr and @xdebug

---

## #105028 — Robert Hickman — 2019-04-01T14:26:45+00:00

URL: https://externals.io/message/104533#105028

Is there any reason not to use 'php.net' raw without the 'www'?


>
> Hi,
>
> I've just pushed the changes to the PHP website live, and fixed the
> apache config on php-web3, as it still had "php.net" as ServerName and
> "www.php.net" as ServerAlias — I did commit that to the local GIT
> repo.
>
> Things seem to look fine, so are you OK with my switching away DNS from
> the mirrors in the mid-afternoon (15:00 BST)?
>
> cheers,
> Derick
>
> 
>
> > […]
>
> --
> https://derickrethans.nl | https://xdebug.org | https://dram.io
> Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
> or become my Patron: https://www.patreon.com/derickr
> twitter: @derickr and @xdebug

---

## #105473 — Peter Kokot — 2019-04-27T20:30:06+00:00

URL: https://externals.io/message/104533#105473

Hello,


>
> Is there any reason not to use 'php.net' raw without the 'www'?
>

Additional question: Can we maybe get an insight of a canonical,
recommended URL which should be used now? Is this www.php.,net or is
it php.net without www.

Worth noting that now both domains result in 200 OK (previously there
was a redirection done from php.net to www.php.net):
curl -IL https://www.php.net
curl -IL https://php.net

Thank you...
-- 
Peter Kokot

---

## #105483 — Derick Rethans — 2019-04-28T14:30:36+00:00

URL: https://externals.io/message/104533#105483

> 
> > […]

Yes, it has to with DNS delegation. 

> Additional question: Can we maybe get an insight of a canonical,
> recommended URL which should be used now? Is this www.php.,net or is
> it php.net without www.

https://www.php.net

> Worth noting that now both domains result in 200 OK (previously there
> was a redirection done from php.net to www.php.net):
> curl -IL https://www.php.net
> curl -IL https://php.net

The second one should redirect. I'll have a look next week why it 
doesn't do that.

cheers,
Derick

-- 
https://derickrethans.nl | https://xdebug.org | https://dram.io
Like Xdebug? Consider a donation: https://xdebug.org/donate.php,
or become my Patron: https://www.patreon.com/derickr
twitter: @derickr and @xdebug
