forked from PodcastGenerator/PodcastGenerator
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' into integration
* master: feat: add register button for Podcast Index implement Podcast Index ping function chore(deps): add dependency on podcastindex-php add Podcast Index settings fields to integrations admin page add Podcast Index configuration settings add integrations settings page show or hide custom tags fields based on config setting add config setting for enabling custom tags feature Add example nginx config and update install guide (PodcastGenerator#456) feat: put feed-level custom tags in RSS feed feat: provide configurability for custom feed tags feat: add custom feed tag config file feat: add Podcast namespace to generated feed feat: put custom tags in RSS feed feat: add custom tag blocks in episodes feat: add XML well-formedness checker function
- Loading branch information
Showing
9 changed files
with
223 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,146 @@ | ||
INSTALL | ||
==================== | ||
Install from scratch - Basic | ||
==================== | ||
|
||
1. Download the latest version of Podcast Generator; | ||
2. Unzip the zip package containing the script; | ||
3. Upload the resulting files and folders to your web server; | ||
4. Point your web browser to the URL corresponding to the location where Podcast Generator files were uploaded (e.g. http://mypodcastsite.com/podcastgen). You will be redirected automatically to the 3-step setup wizard; | ||
5. Log-in into Podcast Generator administration area and start publishing your podcast. | ||
|
||
|
||
Upgrade from 2.7 | ||
========== | ||
MAKE A BACKUP OF YOUR ENTIRE PODCAST GENERATOR FOLDER BEFORE UPGRADING!!!!! | ||
|
||
1. Download the latest version | ||
2. Upload it to your web server, allow to overwrite files. | ||
3. Point your web browser to the URL corresponding to the location where Podcast Generator files were uploaded (e.g. http://mypodcastsite.com/podcastgen). You will be redirected to a password converter; | ||
4. Enjoy! | ||
|
||
INSTALL | ||
==================== | ||
Install from scratch - Detailed | ||
==================== | ||
******* | ||
Install Podcast Generator on Ubuntu 20.04 | ||
Please read this through entirely before using. | ||
[//]: https://github.com/PodcastGenerator/PodcastGenerator/issues/272 | ||
******* | ||
This guide assumes there is a fresh install of Ubuntu 20.04.3 and that the user initially logs into the server as the root user. The webserver used is nginx. | ||
|
||
### Access Your Server | ||
1. Open your local machine or login via ssh: | ||
|
||
2. Create a system user: | ||
|
||
`adduser replace_with_your_username` | ||
|
||
3. Add the new user to the sudo group: | ||
|
||
`usermod -aG sudo replace_with_your_username` | ||
|
||
4. Login with user: | ||
|
||
`su replace_with_your_username` | ||
|
||
5. Add port 22 and 80 to the firewall rules and enable: | ||
|
||
`sudo ufw allow 80` | ||
|
||
`sudo ufw allow 443 | ||
|
||
`sudo ufw allow 22` | ||
|
||
`sudo ufw enable` | ||
|
||
`sudo ufw status` | ||
|
||
All active rules should then be shown. | ||
|
||
6. Update system: | ||
|
||
`sudo apt update && sudo apt upgrade` | ||
|
||
7. Install PHP, unzip and nginx: | ||
|
||
`sudo apt install php php-cli php-fpm php-json php-pdo php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath unzip nginx` | ||
|
||
8. Confirm PHP version and configure PHP for file uploads: | ||
|
||
`php --version` | ||
|
||
Output should look like: | ||
|
||
```PHP 7.2.24-0ubuntu0.18.04.6 (cli) (built: May 26 2020 13:09:11) ( NTS ) | ||
Copyright (c) 1997-2018 The PHP Group | ||
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies | ||
with Zend OPcache v7.2.24-0ubuntu0.18.04.6, Copyright (c) 1999-2018, by Zend Technologies) | ||
``` | ||
|
||
Configure your PHP install so file uploads are allowed and working | ||
|
||
`sudo nano /etc/php/(version)/fpm/php.ini` | ||
|
||
Change the according lines to reflect | ||
`upload_max_filesize = 512M` and `post_max_size = 512M` | ||
|
||
### Install Podcast Generator | ||
The next steps assume that you will be using the default html folder provided by the apache install and no other virtual hosts are present. | ||
|
||
9. Navigate to the folder where PodcastGenerator will be installed: | ||
|
||
`cd /var/www/html` | ||
|
||
10. Remove index.html: | ||
|
||
`sudo rm -rf index*.html` | ||
|
||
11. Download the latest release: (replace url with the current release) | ||
|
||
`sudo wget https://github.com/albertobeta/PodcastGenerator/archive/v3.1.1.zip` | ||
|
||
12. Unzip PodcastGenerator: Replace with current release version | ||
|
||
`sudo unzip v3.1.1.zip` | ||
|
||
13. Move PodcastGenerator from the unzipped directory PodcastGenerator-3.1.1 to var/www/html: | ||
|
||
`sudo mv /var/www/html/PodcastGenerator-3.1.1/PodcastGenerator/* /var/www/html` | ||
|
||
14. Cleanup by removing unneccessary files: | ||
`sudo rm -rf PodcastGenerator-3.1.1/ v3.1.1.zip` | ||
|
||
15. Change ownership of the installation files: (NOTE, this is for Ubuntu. If you are using BSD,RHEL,CENTOS,etc. Ownership may be different on different opperating systems.) | ||
|
||
`sudo chown -R www-data:www-data /var/www/html` | ||
|
||
16. Copy the nginx configuration file to the configuration directory and enable it: | ||
|
||
`sudo mv /var/www/html/podcastgenerator-nginx.conf /etc/nginx/sites-available/podcastgenerator-nginx.conf` | ||
|
||
You may need to edit the configuration file to fit your environment. The file contains comments to help you through the process. `sudo nano /etc/nginx/sites-available/podcastgenerator-nginx.conf` | ||
|
||
Then restart nginx to apply your changes | ||
|
||
`sudo systemctl restart nginx` | ||
|
||
Create the file link to enable the webserver configuration | ||
|
||
`sudo ln -s /etc/nginx/sites-enabled/podcastgenerator-nginx.conf /etc/nginx/sites-available/podcastgenerator-nginx.conf` | ||
|
||
17. Optional: Install certbot and obtain a Let's Encrypt certificate: | ||
`sudo apt install certbot python3-certbot-nginx` | ||
`sudo certbot --nginx -d domain.of.your.podcastgenerator` | ||
18. Navigate to the IP, domain or local host address of the machine in a web browser: | ||
`ip.address.in.browser` or `domain.of.your.podcastgenerator` | ||
19. Select "Begin Installation" | ||
### ALL DONE! | ||
Enjoy your installation of Podcast Generator! Consider spreading the word about the software or [contribute back to the project](https://github.com/PodcastGenerator/PodcastGenerator). If your self-hosted instance gets to be too much to handle or if the installation/maintainance/security seems too intimidating, please consider using our [hosting partner](https://rss.com/blog/how-to-create-an-rss-feed-for-a-podcast/). Free accounts are availble for students and Non-profits and other users start with a free trial and have the option to upgrade to a full featured hosted plan starting at $12.99/month (USD). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
server { | ||
# 301 redirect users to an encrypted version of the page | ||
# Change example.com to the domain where podcast-generator will be running | ||
# You need to disable this and change the line "listen 443 ssl" in the following block to "listen 80" if you wish an unencrypted only page | ||
listen 80; | ||
server_name example.com; | ||
return 301 https://$host$request_uri; | ||
} | ||
|
||
server { | ||
# Main server block config | ||
# Change example.com to the domain where podcast-generator will be running | ||
listen 443 ssl; | ||
server_name example.com; | ||
|
||
# Set nginx max_body_size attribute to 1 GB to prevent php timeout errors | ||
# This is necessary so the upload in the admin panel works reliably | ||
client_max_body_size 1G; | ||
|
||
location / { | ||
# Change your document root accordingly | ||
root /var/www/html; | ||
index index.php; | ||
|
||
# Set proxy_read_timeout attribute to 1 hour | ||
# Prevents nginx from reinitiating the server connection because it thinks PHP is timing out | ||
proxy_read_timeout 3600; | ||
|
||
# default PHP enable snipped - change according to the configuration your OS uses | ||
location ~ \.php$ { | ||
include snippets/fastcgi-php.conf; | ||
fastcgi_split_path_info ^(.+\.php)(/.+)$; | ||
include fastcgi_params; | ||
fastcgi_param SCRIPT_FILENAME $request_filename; | ||
fastcgi_pass unix:/run/php/php7.3-fpm.sock; | ||
} | ||
} | ||
} |