Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
/vendor/*
/storage/*
composer.lock
.htaccess
.htaccess
favicon.ico
57 changes: 5 additions & 52 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,55 +1,8 @@
# php-proxy-app
Web Proxy Application built on [**php-proxy library**](https://github.com/Athlon1600/php-proxy) ready to be installed on your server
Web Proxy Application built on [**php-proxy library**](https://github.com/Athlon1600/php-proxy) ready to be installed on your server. This is my personal fork of this project. The original can be found [here](https://github.com/Athlon1600/php-proxy-app).

![alt text](http://i.imgur.com/KrtU5KE.png?1 "This is how PHP-Proxy looks when installed")
# Installation
Using this project is simple. Simply clone the repository in to your web root folder on your server, enable SSL (I use [Certbot](https://certbot.eff.org/)) and you're ready to go. If I was you I would change the page name, title and notice before making your version live.

## To Do List

As of **March 25**, 2018:

* Plugin for facebook.com
* Plugin for dailymotion.com
* Better support/documentation for Plugin Development
* Better Javascript support

## Web-Proxy vs Proxy Server

Keep in mind that sites/pages that are too script-heavy or with too many "dynamic parts", may not work with this proxy script.
That is a known limitation of web proxies. For such sites, you should use an actual proxy server to route your browser's HTTP requests through:

https://www.proxynova.com/proxy-software/


## Installation

Keep in mind that this is a **project** and not a library. Installing this via *require* would do you not good.
A project such as this, should be installed straight into the public directory of your web server.

```bash
composer create-project athlon1600/php-proxy-app:dev-master /var/www/
```

If you do not have composer or trying to host this application on a **shared hosting**, then download a pre-installed version of this app as a ZIP archive from [**www.php-proxy.com**](https://www.php-proxy.com/).

**Direct Link:**
https://www.php-proxy.com/download/php-proxy.zip

## Keep it up-to-date

Application itself rarely will change, vast majority of changes will be done to its requirement packages like php-proxy. Simply call this command once in a while to make sure your proxy is always using the latest versions.

```
composer update
```

#### config.php

This file will be loaded into the global Config class.

#### /templates/

This should have been named "views", but for historic purposes we keep it named as templates for now.

#### /plugins/

PHP-Proxy provides many of its own native plugins, but users are free to write their own custom plugins, which could then be automatically loaded from this very folder. See /plugins/TestPlugin.php for an example.
# Issues
If there is an issue with the design of the proxy, make an issue here. If there is an issue with the proxy itself, head on over to Athlon1600's repo. This fork is (mostly) just a reskin.
84 changes: 29 additions & 55 deletions config.php
Original file line number Diff line number Diff line change
@@ -1,55 +1,29 @@
<?php

// all possible options will be stored
$config = array();

// a unique key that identifies this application - DO NOT LEAVE THIS EMPTY!
$config['app_key'] = '';

// a secret key to be used during encryption
$config['encryption_key'] = '';

/*
how unique is each URL that is generated by this proxy app?
0 - no encoding of any sort. People can link to proxy pages directly: ?q=http://www.yahoo.com
1 - Base64 encoding only, people can hotlink to your proxy
2 - unique to the IP address that generated it. A person that generated that URL, can bookmark it and visit it and any point
3 - unique to that session and IP address - URL no longer valid anywhere when that browser session that generated it ends
*/

$config['url_mode'] = 2;

// plugins to load - plugins will be loaded in this exact order as in array
$config['plugins'] = array(
'HeaderRewrite',
'Stream',
// ^^ do not disable any of the plugins above
'Cookie',
'Proxify',
'UrlForm',
// site specific plugins below
'Youtube',
'DailyMotion',
'RedTube',
'XHamster',
'XVideos',
'Twitter'
);

// additional curl options to go with each request
$config['curl'] = array(
// CURLOPT_PROXY => '',
// CURLOPT_CONNECTTIMEOUT => 5
);

//$config['replace_title'] = 'Google Search';

//$config['error_redirect'] = "https://unblockvideos.com/#error={error_msg}";
//$config['index_redirect'] = 'https://unblockvideos.com/';

// $config['replace_icon'] = 'icon_url';

// this better be here other Config::load fails
return $config;

?>
<?php

$config = array();

$config['app_key'] = '4d31697d9779a5c8cb2a552617a6b5d8';

$config['encryption_key'] = '3V4z5nCXRFO5svJti1p2QZvK1RoPFERyKSqZafqDw6k';

$config['url_mode'] = 3;

// plugins to load - plugins will be loaded in this exact order as in array
$config['plugins'] = array(
'HeaderRewrite',
'Stream',
// ^^ do not disable any of the plugins above
'Cookie',
'Proxify',
'UrlForm',
// site specific plugins below
'Youtube',
'Twitter'
);
$config['curl'] = array(
//
);

return $config;

?>
Loading