mirror of
https://github.com/php/web-php.git
synced 2026-03-24 07:12:16 +01:00
2a9e6e29201a1133a58525e7eb81663e9764827e
Here is how to mirror the PHP site:
First, you need to have a rsync (http://rsync.samba.org/) installed.
Fetch the web files with the following:
rsync -avzC --delete rsync.php.net::phpweb /your/local/path
If /your/local/path isn't in your web document tree (why isn't it?),
then symlink the phpweb/ directory to the correct place on your server.
Now, make sure your web server is set up to serve up .php3 and .php
files as PHP parsed files. If it isn't, add the mime-type to your config.
Rename the configuration.inc-dist file to configuration.inc and edit it
appropriately. Set $failover_user_notes=true to enable a live query
to www.php.net to fetch user contributed manual notes.
Once you create a virtualhost which looks something like:
<VirtualHost xx.php.net>
ServerName xx.php.net
ServerAdmin yourname@yourdomain.com
DocumentRoot /www/htdocs/phpweb
<IfModule mod_php3.c>
php3_include_path .:/www/htdocs/phpweb/include
</IfModule>
<IfModule mod_php4.c>
php_value include_path .:/www/htdocs/phpweb/include
</IfModule>
ErrorLog logs/error_log
TransferLog logs/access_log
DirectoryIndex index.php index.php3 index.html index.htm manual.php manual.php3 manual.html
ErrorDocument 404 /error/
ErrorDocument 401 /error/
ErrorDocument 403 /error/
</VirtualHost>
modified to reflect your local paths and country, of course, then your site
should start working.
Note: The official names for PHP mirrors are in the convention: "xx.php.net",
where "xx" is replaced by the 2-letter country code of your mirror's location.
If there already is a "xx.php.net", then you should set up your ServerName to
be "xx2.php.net" (or "xx3.php.net", etc.). For a list of what's available and
whats taken, have a look at the mirror_list.txt file.
You must also set up a cron job that periodically does an rsync to refresh
your web directory. This will ensure that your web site is up to date.
Something like:
0,30 * * * * /usr/local/bin/rsync -avzC --delete rsync.php.net::phpweb /your/path
(You don't need to update every half-hour, although it shouldn't
hurt. You should try to stagger your times a bit from the example
to help spread the load on the rsync.php.net server.)
Once you have done the above and your site appears to work, send
a message to mirrors@php.net with the following information, and
appropriate steps will be taken to integrate your mirror site:
- Your name and email address as the admin for the mirror.
- Your country (we will update the DNS for php.net).
- A hostname that we can use as a CNAME for the country-code-based
name of the mirror. (This is preferable to an IP address, because
it means you can move the mirror to another IP address without
coordinating with us at all.)
- Whether or not you've installed local searching support on your mirror.
This uses ht://Dig (http://www.htdig.org), for which instructions for
setting it up can be found in Mirrors-htdig.tgz
- A logo for your hosting company, or the URL of where we can get one.
The bigger and better the quality, the better. We will do the fancy
graphics stuff to make it fit into the look of the site.
- The URL of the site that hosts the mirror. This is where you want
people will go when they click on the logo at the bottom of each page.
Don't worry about graphics for your country's flag - we've got them all!
You must also sign up to the mirrors mailing list, by sending an empty
message to:
php-mirrors-subscribe@lists.php.net
Traffic is pretty light, and we need to be able to keep in touch with you!
And finally, don't forget to put a nice little PHP logo somewhere on your
hosting company's site if possible. Grab one of the logos from the
"Downloads" page on the PHP site, and link it to your mirror.
Description
⚠️ ARCHIVED: Original GitHub repository no longer exists. Preserved as backup on 2026-01-22T16:26:27.645Z
Languages
PHP
94.4%
CSS
2.6%
JavaScript
2.5%
PowerShell
0.2%
TypeScript
0.2%