Main project repository
Exileum Merge pull request #472 from torrentpier/2.3
Release 2.3.0.1 πŸ‚
Latest commit 92856a4 Jun 27, 2018
Permalink
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Update issue templates May 22, 2018
admin Configurable download torrent url Jun 24, 2018
bt Unqualified function/constant reference and much more Jun 24, 2018
data IP storage and attachment system bugfix. PHP 5.6+. Jun 12, 2017
install PHP 7+ deprecations of old cache systems Jun 26, 2018
internal_data Update .htaccess for new Apache 2.4 syntax. Jul 29, 2017
library Release 2.3.0.1 Jun 26, 2018
sitemap Replace sitemap to the new external component. Jun 1, 2017
src Fix cron jobs fail without global config variable Jun 26, 2018
styles Release preparation. Crowdin language pack update. Jun 26, 2018
.editorconfig Composer init, editor config, some cleanup and much more Jan 28, 2017
.env.example Fix some bugs with MySQL strict mode Jun 24, 2018
.gitignore Update required PHP version to 7.1.3 Jun 24, 2018
.htaccess Release preparation. Small bugfixes and readme translation. Jun 12, 2017
.styleci.yml TorrentPier Aurochs release preparation. Jun 12, 2017
CHANGELOG.md Release 2.3.0.1 Jun 26, 2018
CODE_OF_CONDUCT.md New project domain name. Jun 24, 2017
CONTRIBUTING.md New project domain name. Jun 24, 2017
LICENSE Update copyright to the short syntax. Jun 23, 2018
README.md Update required PHP version to 7.1.3 Jun 24, 2018
ajax.php Split functions to the composer autoloading Jun 24, 2018
callseed.php Configurable download torrent url Jun 24, 2018
common.php PHP 7+ deprecations of old cache systems Jun 26, 2018
composer.json Release 2.3.0 Jun 26, 2018
composer.lock Update required PHP version to 7.1.3 Jun 24, 2018
cron.php Update copyright to the short syntax. Jun 23, 2018
crowdin.yml Update Crowdin configuration file Feb 11, 2017
dl.php Configurable download torrent url Jun 24, 2018
dl_list.php Update copyright to the short syntax. Jun 23, 2018
favicon.png New logotype, favicon and css split & reformat. Jun 9, 2017
feed.php Null coalescing operator can be used Jun 24, 2018
group.php Unqualified function/constant reference and much more Jun 24, 2018
group_edit.php Split functions to the composer autoloading Jun 24, 2018
index.php PHP 7+ deprecations of old cache systems Jun 26, 2018
info.php Update copyright to the short syntax. Jun 23, 2018
login.php Unqualified function/constant reference and much more Jun 24, 2018
memberlist.php Unqualified function/constant reference and much more Jun 24, 2018
modcp.php Null coalescing operator can be used Jun 24, 2018
opensearch_desc.xml New project domain name. Jun 24, 2017
opensearch_desc_bt.xml New project domain name. Jun 24, 2017
poll.php Update copyright to the short syntax. Jun 23, 2018
posting.php Fix release template editor Jun 24, 2018
privmsg.php Fix multiple variable cleanup in private messaging Jun 24, 2018
profile.php Update copyright to the short syntax. Jun 23, 2018
robots.txt New project domain name. Jun 24, 2017
search.php Unqualified function/constant reference and much more Jun 24, 2018
terms.php Update copyright to the short syntax. Jun 23, 2018
tracker.php Fix magnet link passkey creation for new users Jun 24, 2018
viewforum.php Fix magnet link passkey creation for new users Jun 24, 2018
viewtopic.php Fix some bugs with MySQL strict mode Jun 24, 2018

README.md

Slack Crowdin Scrutinizer Codacy
SensioLabs Insight Travis CircleCI Codecov

About TorrentPier

TorrentPier β€” bull-powered BitTorrent tracker engine, written in php. High speed, simple modification, high load architecture, built-in support for alternative compiled announcers (Ocelot, XBT). In addition we have very helpful official support forum, where among other things it is possible to test the live demo, get any support and download modifications for engine.

Current status

TorrentPier is currently in active development. The goal is to remove all legacy code and rewrite existing to modern standards. If you want to go deep on the code, check our issues and go from there. The documentation will be translated into english in the near future, currently russian is the main language of it.

Requirements

  • Apache / nginx
  • MySQL / MariaDB / Percona
  • PHP: 7.1 / 7.2 / 7.3
  • PHP Extensions: bcmath, intl, tidy (optional), xml, xmlwriter

Installation

For installation you need to follow a few simple steps:

  1. Unpack to the server the contents of the downloaded folder
  2. Install Composer and run composer install on the downloaded directory
  3. Create database and import dump located at install/sql/mysql.sql
  4. Edit database configuration settings in the configuration file or a local copy (see below)
  5. Edit domain name in the configuration file or a local copy (see below)
  6. Edit domain ssl setting in the configuration file or a local copy (see below)
  7. Edit this files:
    1. favicon.png (change on your own)
    2. robots.txt (change the addresses in lines Host and Sitemap on your own)
    3. opensearch_desc.xml (change the description and address on your own)
    4. opensearch_desc_bt.xml (change the description and address on your own)
  8. Log in to the forum with admin/admin login/password and finish setting up via admin panel

Access rights on folders and files

You must provide write permissions to the specified folders:

  • data/avatars
  • data/torrent_files
  • internal_data/ajax_html
  • internal_data/atom
  • internal_data/cache
  • internal_data/log
  • internal_data/triggers
  • sitemap

The specific settings depend on the server you are using, but in general case we recommend chmod 0755 for folders, and chmod 0644 for files in them. If you are not sure, leave it as is.

The recommended way to run cron.php

For significant tracker speed increase may be required to replace built-in cron.php by operating system daemon. For more information about that you can read this thread on our support forum.

Local configuration copy

You can override the settings using one of these methods: configuration file library/config.local.php and the environment file .env. Both files are created by copying the appropriate .example templates without extension. Local configuration files should not be available for reading to anyone by setting up access rights for your web server.

Ocelot installation

We have built-in support for alternate compiled announcer β€” Ocelot. The configuration is in the file library/config.php, the announcer is in the repository torrentpier/ocelot. You can read assembly instructions on his repository or in this thread on our support forum.

Official documentation

Documentation for TorrentPier can be found on the TorrentPier docs website.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us. But we are always ready to renew your pull-request for compliance with these requirements. Just send it.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the MIT License - see the LICENSE.md file for details