16. Apache2.4でリバースプロキシ

VLCコンソールをブラウザで表示させる時に、8080ポート(8081から変更した)を指定してアクセスしていたが、リバースプロキシと云うのを利用すればポート指定無しでアクセスできそうなので、お勉強を兼ねて試してみた。
しかし、ネットで設定方法を調べたが、しっくりするものが無く、色々な情報を断片的に取り入れて、以下の手順でどうにか完成。

【リバースプロキシでやりたいこと】


「http://raspi.local/vlc/」 を 「http://localhost:8080/」 へ渡す
* VLCコンソ-ルはジャケット画像を表示するため /art にアクセスするのでそれも追加

1.デレクトリの移動


   $ cd /etc/apache2/sites-available
2.デフォルトファイルのコピー(ファイル名はサイトドメイン名)

   $ sudo cp 000-default.conf raspi.local.conf
3.コピーしたconfファイルの編集し、バーチャルホストの設定をする

   $ sudo nano raspi.local.conf
    
   
      :
      : 11行目
   #	ServerAdmin webmaster@localhost    ←コメントアウト
   #	DocumentRoot /var/www/html         ←コメントアウト
	ServerName raspi.local             ←追加
	ProxyRequests Off                  ←追加
	ProxyPass /vlc http://localhost:8080         ←追加
	ProxyPassReverse /vlc http://localhost:8080  ←追加
	ProxyPass /art http://localhost:8080/art         ←追加(ジャケット画像用)
	ProxyPassReverse /art http://localhost:8080/art  ←追加(ジャケット画像用)
      :
      : 24行目
	ErrorLog ${APACHE_LOG_DIR}/vlc_error.log             ←変更 "vlc_"追加
	CustomLog ${APACHE_LOG_DIR}/vlc_access.log combined  ←変更 "vlc_"追加
      :
      :
   
4.サイトの有効化

   $ sudo a2ensite raspi.local
5.リバースプロキシを有効にする

   $ sudo a2enmod proxy
   $ sudo a2enmod proxy_http
6.設定を有効にするためにサービス再起動

   $ sudo service apache2 restart
7.ブラウザからアクセスするには

   http://raspi3.local/vlc/   *最後に"/"を付ける
8.サイトとプロキシを無効化する方法

   $ sudo a2dismod proxy_http
   $ sudo a2dismod proxy
   $ sudo a2dissite raspi.local
   $ sudo service apache2 restart

その他、raspi0で作成したサウンド系リモコンのブラウザ版をraspi3にも導入して、更に"iframe"タグでVLCコンソールを組み込んで表示するようにした。


<iframe src=http://raspi.local/vlc/ width='860' height='520' name='sita' frameborder='0'></iframe>

【参考】
  1. ラズベリーパイを焼く(5)
  2. Apache リバース プロキシ サーバを設定する方法


2018/11/01