disposable-mailbox-2/README.md

80 lines
3.7 KiB
Markdown
Raw Permalink Normal View History

2018-01-31 11:52:39 +00:00
# disposable-mailbox
[![Join the chat at https://gitter.im/synox/disposable-mailbox](https://badges.gitter.im/synox/disposable-mailbox.svg)](https://gitter.im/synox/disposable-mailbox?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
2016-07-08 11:59:21 +00:00
2018-01-31 16:10:09 +00:00
A **self-hosted** disposable mailbox service (aka trash mail) :cloud: :envelope:
2017-04-15 19:10:22 +00:00
2019-03-28 07:47:00 +00:00
**PHP is not your thing? You should try the more efficient NodeJs version:** https://github.com/synox/void-mail
2021-03-27 20:44:17 +00:00
-----
2019-03-11 12:58:28 +00:00
![Screenshot](docs/screenshot_example.png)
2016-07-02 21:05:44 +00:00
2016-07-02 21:09:59 +00:00
2018-01-31 11:52:39 +00:00
## Features
2016-07-02 21:09:59 +00:00
2018-01-31 11:52:39 +00:00
* Anonymous usage, generate random email addresses.
* New Mail notification. Download and delete your emails.
2018-01-31 11:52:39 +00:00
* Display emails as text or html with sanitization filter.
* Display emails based on one [catch-all imap mailbox](https://www.google.ch/search?q=how+to+setup+catch-all+imap+mailbox).
* Only requires PHP >=7.2 and [imap extension](http://php.net/manual/book.imap.php)
2016-08-08 07:10:25 +00:00
2018-01-31 11:52:39 +00:00
## Usage
2016-07-02 21:05:44 +00:00
2018-01-31 12:00:31 +00:00
### Requirements
2016-07-02 21:05:44 +00:00
* webserver with php >=7.2
2017-02-28 07:47:37 +00:00
* php [imap extension](http://php.net/manual/book.imap.php)
2018-01-31 11:52:39 +00:00
* IMAP account and a domain with [catch-all configuration](https://www.google.ch/search?q=how+to+setup+catch-all+imap+mailbox). (all emails go to one mailbox).
2018-01-31 12:00:31 +00:00
### Before you start :heavy_exclamation_mark:
2018-01-31 11:52:39 +00:00
* Subscribe to [![Join the chat at https://gitter.im/synox/disposable-mailbox](https://badges.gitter.im/synox/disposable-mailbox.svg)](https://gitter.im/synox/disposable-mailbox?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) to be notified about issues and bugfixes.
* This is **Beta** software, [there are still unsolved problems](https://github.com/synox/disposable-mailbox/issues). Contributions are welcome! :heart:
* License: **GPL-3.0**. You can modify this application and run it anywhere, charge money and show advertisement. Any forks or repacked distribution must follow the [GPL-3.0 license](https://opensource.org/licenses/GPL-3.0).
* A link to https://github.com/synox/disposable-mailbox in the footer is appreciated.
2016-07-02 21:05:44 +00:00
2018-01-31 12:00:31 +00:00
### Installation
2016-07-02 21:05:44 +00:00
2018-01-31 11:52:39 +00:00
Disposable-mailbox can be installed by copying the src directory to a webserver.
2016-07-02 21:05:44 +00:00
1. assure the [imap extension](http://php.net/manual/book.imap.php) is installed. The following command should not print any errors:
<?php print imap_base64("SU1BUCBleHRlbnNpb24gc2VlbXMgdG8gYmUgaW5zdGFsbGVkLiA="); ?>
2016-12-19 21:34:36 +00:00
2. download a [release](https://github.com/synox/disposable-mailbox/releases) or clone this repository
2017-02-28 07:32:18 +00:00
3. copy the files in the `src` directory to your web server (not the whole repo!).
2018-12-26 01:48:15 +00:00
4. rename `config.sample.php` to `config.php` and apply the imap settings. Move `config.php` to a safe location in a *parent directory* outside the `public_html`, so it is not reachable through the browser.
5. open it in your browser, check your php error log for messages.
2016-07-02 21:05:44 +00:00
2018-01-31 12:00:31 +00:00
### Build it yourself
2016-12-19 21:21:53 +00:00
The src directory contains all required files. If you want to update the php dependencies, you can update them yourself. You must have [composer](https://getcomposer.org/download/) installed.
2016-09-14 18:27:18 +00:00
2016-07-02 21:05:44 +00:00
Install php dependecies:
2018-01-12 20:35:49 +00:00
composer update
2016-07-02 21:05:44 +00:00
2018-12-26 02:12:43 +00:00
### Troubleshooting
* **IMAP Server has invalid certificate**: You might have to add `novalidate-cert` to the IMAP settings. See flags on http://php.net/manual/en/function.imap-open.php.
* **Error 500, Internal error**: Check your error log file. Add to `config.php`:
ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL);
## Testing on MacOs
2019-03-10 18:13:44 +00:00
* brew install php
* brew tap kabel/php-ext
* brew install kabel/php-ext/php-imap
* php -S localhost:8000 -t src
2018-01-31 11:52:39 +00:00
## Credit :thumbsup:
2016-07-02 21:05:44 +00:00
This could not be possible without...
2018-01-31 11:52:39 +00:00
* https://github.com/barbushin/php-imap, https://github.com/gnugat-legacy/PronounceableWord, http://htmlpurifier.org/,
* https://github.com/turbolinks/turbolinks, http://tobiasahlin.com/spinkit/