先前使用的 ViMP 經過多年後速度已經有點跟不上現在的電腦,同時因沒有同步升級,現在要升級到新版嘗試了幾次都以失敗收場,所以開始尋找其他解決方案,希望能在使用速度上能有所提升,測試了幾套之後最終選擇 YouPHPTube 作為接下來幾年的影音撥放平台.
首先 YouPHPTube 看名字就知道目標是以 YouTube 為目標,希望能打造一個個人的影音平台,甚至於可以跟其他網站連結共同使用,其反應速度真的很快,同時也有另一個後台來協助做檔案格式的轉換,使用上對一般使用者也很方便。
首先要安裝 Ubuntu, 我選擇 16.04.2 server 版,網路上應該還可以找到更新的版本,安裝時建議先選擇英文,因為我用中文安裝發生了很多無法預期的錯誤,安裝前請先把網路環境(包括 IP, DNS, Firewall, 上網權限)等先設定好,因為這些東西不太好修正,同時也容易使用時出問題,需要額外花時間去除錯。
軟體安裝時請留意 LAMP Server 可以選也可以不選,因為後續 Script 還會安裝或更新,但是建議 OpenSSH 開啟,使用Putty 連入可以省下手動輸入的時間。

安裝完成後會看到以下的畫面,此時看到有很多套件可以更新,此時先建議可以更新,免得裝好後發生問題。

更新請參考以下指令:
sudo apt-get update
sudo apt-get -y dist-upgrade
sudo apt-get clean
更新完成重新開機就可以看到版本升級到 16.04.3
安裝套件, 指令請依照底下文字,選擇後貼入到 putty 執行即可, 請留意每個套件是否都安裝成功,安裝 mysql 需要輸入 root 密碼,此時請記住自己設定的密碼喔.
sudo apt-get install apache2 php7.0 libapache2-mod-php7.0 php7.0-mysql
php7.0-curl php7.0-gd php7.0-intl mysql-server mysql-client ffmpeg git
libimage-exiftool-perl
跳到網頁根目錄
cd /var/www/html
下載 YouPHPTube 軟體
sudo git clone https://github.com/DanielnetoDotCom/YouPHPTube.git
跳到網頁根目錄
cd /var/www/html
下載編碼服務器的程式, 此程式是可以安裝在不同主機,但因公司使用的量不高,所以放置在同一台主機內使用
sudo git clone https://github.com/DanielnetoDotCom/YouPHPTube-Encoder.git
安裝 Python
sudo apt-get install python
直接下載 YouTube 影片的套件
sudo curl -l https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
更改目錄權限
sudo chmod a+rx /usr/local/bin/youtube-dl
安裝完畢後請輸入 http://yourip/YouPHPTube 看看安裝結果,如果沒有意外應該會看到以下的錯誤畫面。

代表 apache2 設定沒有設定完成,修改其設定檔案
sudo vi /etc/apache2/apache2.conf
在 vi 內尋找指定字串
/Directory /var/www
改成底下的
變更 a2enmod 及重啟 apache2 服務.
sudo a2enmod rewrite
sudo service apache2 restart
刷新網址,就可以看到以下的畫面,此時我們要解決左方有紅色的錯誤部分,都是一些系統預設值或檔案權限要調整而已,如果有套件安裝異常的話,也會在這邊警告,點開後也會有指定告訴你要如何修改。

設定影片上傳路徑的權限
sudo mkdir /var/www/html/YouPHPTube/videos
sudo chmod -R 777 /var/www/html/YouPHPTube/videos
編輯 PHP 的設定檔案
sudo vi /etc/php/7.0/apache2/php.ini
修改 Post_Max_size, 最大可以上傳的檔案大小
/post_max_size
改成
修改上傳的檔案最大大小
/upload_max_filesize
改成
寫入到檔案內並離開vi 編輯器
:wq
重新啟動 apache2 的服務喔
sudo service apache2 restart
如果以上修改沒有問題,就可看到左方的畫面都變成綠色的.

接下來要處理右邊要啟動的參數,有以下的欄位需要依照需求調整,其中 Database Password 就是裝 mysql 所輸入的密碼,System Admin Password 是登入系統的 admin 密碼.
Title of your Web Site
Contact E-mail
Database Password
System Admin password
Confirm System Admin password
設定完成後按下確認就看到完成的畫面,點下方按鈕就可以進入操作介面

系統是建議要刪除安裝路徑,以免被其他同仁誤改,輸入底下的指令來清除.
cd /var/www/html/YouPHPTube
sudo rm –rf install
接下來輸入設定的 IP 及路徑就可以進入到系統內.
http://yourip/YouPHPTube/

點右上方的選單可看到登入的按鈕。

輸入 admin 及剛剛設定 system admin password 就可以登入來修改參數使用喔.

登入後就可以看到管理者的介面

需要到”站台配置”去檢查各項的設定是不是符合建置需求,其中有個進階選項的編碼器需要調整。

預設編碼器是會使用在網路外面免費的編碼,但是把檔案傳出公司在傳回來會使用大量的頻寬及等待轉檔時間,此時就可以使用自行架設的服務。
前端網站設定完畢後,接下來是設定轉碼的網站,剛剛的程序其實有順便安裝了編碼網站,所以只要登入 http://yourip /YouPHPTube-Encoder 就可以進入編碼的網站,當然進入後又看到了一些錯誤訊息,繼續解決左邊的紅色錯誤。

同樣的,這個網站的影片上傳目錄要建立並重新賦予權限
sudo mkdir /var/www/html/YouPHPTube-Encoder/videos
sudo chown www-data:www-data /var/www/html/YouPHPTube-Encoder/videos
sudo chmod 755 /var/www/html/YouPHPTube-Encoder/videos
修改 php.ini 設定
sudo vi /etc/php/7.0/apache2/php.ini
設定最大執行時間, 我都是設定建議值的一倍.
/max_execution_time
改成
設定最大使用到多少記憶體, 要看設定的主機大小喔..
/ memory_limit
改成
重啟 apache2
sudo service apache2 restart
這樣左邊的問題就解決了.

右邊要注意 Database Password, 同樣的是安裝 mysql 的密碼
右邊底下這一小段要設定使用者看到的網站 URL, 以及該網站的 admin 及密碼,因為整個的運作機制是要在編碼網站 (Encoder) 上傳影片及轉檔,之後系統會自動幫忙把不同的解析度、縮圖等再傳送到前端服務器。
完成後就看到底下的畫面
同樣的系統也建議刪掉安裝路徑下的檔案
cd /var/www/html/YouPHPTube-Encoder
sudo rm -rf install
點選進入首頁後就可進入到編碼的後台首頁
進入後看到的畫面如下,右上方顯示現在系統上面執行的各項參數,底下是轉檔要轉的格式,方便各種不同頻寬撥放使用,
底下是上傳影片的連結,測試時請點 Upload 隨便選一個檔案上傳,看看安裝是否正常,左方的 Download 是可以把Youtube 等網站的影片直接下載回來使用,Bulk Encode 可以一口氣大量的作轉檔.
如果設定正常就可以看到左方螢幕開始轉檔
以上作業就宣告完成,系統應該就可以正常的運作。
如果不想把網站放在子目錄下又不想調整apache 設定,可以參考以下的參數來改善。
修改 apache 目錄底下的 .htaccess
sudo vi /var/www/html/.htaccess
新增底下這些文字
RewriteEngine on
RewriteCond %{HTTP_HOST} yoursite.com [NC]
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^(.*)$ /YouPHPTube/$1 [L]
參考文件:
https://github.com/DanielnetoDotCom
https://www.how2shout.com/how-to/install-youphptube-ubuntu-server-youtube-clone-script.html
http://support.hostgator.com/articles/apache-mod_rewrite-and-examples