/Pier-Legacy

Raspberry Pi Home Server

Primary LanguagePHP

Pier (Legacy) - Raspberry Pi Home Server

⚠ This project is now abandoned. Successor: Pier Media


Preview of Pier home screen with content.

A home media center made for use with Raspberry Pi 4 Model B (though should work on other devices)

Connect to your Pier server by going to it's IP address in the browser of your choice e.g. in Google Chrome, top bar 192.168.8.77/ or simply go to the URL: raspberrypi/

Dependencies:

  • Apache/2.4.38 (Raspbian)
  • PHP 7+ (made with 7.3.14-1~deb10u1)
  • youtube-dl (latest stable)
  • ffmpeg (latest stable)
  • Allow apache & shell commands to access /var/www/html

Installation (on Raspbian/Debian)

  • Install Apache2 sudo apt update sudo apt install apache2 -y
  • Install PHP sudo apt install php libapache2-mod-php -y
  • Install youtube-dl sudo apt-get install youtube-dl sudo apt-get install python-pip sudo pip install youtube-dl
  • Install ffmpeg on Raspbian with guide, or follow a command List
  • Install MariaDB Server sudo apt install mariadb-server php-mysql -y
  • Remove default files and clone contents of repository to to /var/www/html cd /var/www/html sudo rm index.html sudo git clone https://github.com/YeloPartyHat/Pier.git .

Now you will need to enable URL override (for apache's .htaccess file)

  • sudo nano /etc/apache2/apache2.conf This will open up an editor. Scroll down until you see:
    <Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>
    ...and change AllowOverride None to AllowOverride All
  • sudo a2enmod rewrite
  • sudo service apache2 restart
Apache2 hosts from /var/www/html/ on Raspbian

You will need to make sure git is installed for the above installation. Installed by default but just in case: sudo apt install git

Troubleshooting

  • Make sure config file locations are correct.
  • Make sure username and password are set correctly in config.php
  • Error 500? Make sure you set up .htaccess correctly
  • Can't connect to database? Make sure the config/config.php match your MariaDB settings. Default: define("DB_USERNAME","root"); define("DB_PASSWORD","");
  • Still can't connect to database? Make sure your user as DB_USERNAME and DB_PASSWORD are set up correctly... or try make a new user!
  • Trouble updating? git fetch --all git reset --hard origin/master. This will hard reset any local changes and fetch the latest stable release.

If you want to mount external hard drive(s) to folders check out this guide https://www.htpcguides.com/properly-mount-usb-storage-raspberry-pi/ then create a symbolic link with the folder name to the folder in the mounted drive using ln -s /mnt/storage/folder /var/www/html/stored/folder