独自コンテンツを公開する場合

自作のプログラムなんぞを公開する場合の手順です。

1. 以下のようにディレクトリを作成する

sudo mkdir /opt/bitnami/apps/MYAPP
sudo mkdir /opt/bitnami/apps/MYAPP/htdocs/
sudo mkdir /opt/bitnami/apps/MYAPP/conf 

2. /opt/bitnami/apps/MYAPP/htdocs/にコンテンツを配置する

3. 以下のような内容の/opt/bitnami/apps/MYAPP/conf/httpd-prefix.confを作成する

Alias /MYAPP/ "/opt/bitnami/apps/MYAPP/htdocs/"
Alias /MYAPP "/opt/bitnami/apps/MYAPP/htdocs/"
Include "/opt/bitnami/apps/MYAPP/conf/httpd-app.conf" 

4. 以下のような内容の/opt/bitnami/apps/MYAPP/conf/httpd-app.confを作成する
 コンテンツのメインconfigファイルなので、必要に応じて変更する

<Directory /opt/bitnami/apps/MYAPP/htdocs/>
 Options +FollowSymLinks
 AllowOverride None
 <IfVersion < 2.3 >
  Order allow,deny
  Allow from all
 </IfVersion>
 <IfVersion >= 2.3>
  Require all granted
 </IfVersion>
</Directory> 

5. 独自コンテンツ/プラグインが.htaccessファイルを使用する場合は、以下の作業が必要
 1. /opt/bitnami/apps/MYAPP/conf/httpd-app.confのallowOverride NoneをAllowOverride Allに変更
 2. /opt/bitnami/apps/MYAPP/conf/httpd-app.confの最終行に以下を追加

Include "/opt/bitnami/apps/APPNAME/conf/htaccess.conf"		

 3. 以下のような内容の/opt/bitnami/apps/MYAPP/conf/htaccess.confを作成する
  CONTENTの部分に.htaccessの内容をすべてコピーする

<Directory "/opt/bitnami/apps/APPNAME/htdocs/">
 CONTENT
</Directory> 

6. ファイル/ディレクトリのパーミッションを変更する

sudo chown -R bitnami:daemon /opt/bitnami/apps/MYAPP/htdocs/
sudo chown -R bitnami:daemon /opt/bitnami/apps/MYAPP/conf/
sudo chmod -R g+w /opt/bitnami/apps/MYAPP/htdocs/ 

7. Apacheの/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.confに以下を追加する

Include "/opt/bitnami/apps/MYAPP/conf/httpd-prefix.conf" 

8. Apacheを再起動する

sudo /opt/bitnami/ctlscript.sh restart apache

ドメインルートに公開したい場合

ドメインのルートにアクセスした時に独自コンテンツを公開したい場合は、もうひと手間加えないといけません。

/opt/bitnami/apps/MYAPP/conf/httpd-prefix.conf を修正して以下のようにします。

DocumentRoot "/opt/bitnami/apps/myapp/htdocs/"
Include "/opt/bitnami/apps/myapp/conf/httpd-app.conf"

そしてApacheの再起動です。

コンテンツ自体にパスワードを設定する

コンテンツを起動してからIDとパスワードの入力を求める方法でもいいのですが、コンテンツのURIにアクセスした時点でIDとパスワードを必要とする方が、なんとなく堅固な感じがするので、その方法を残しておきます。

1.以下のコマンドを実行
大文字になってる所(3箇所)は、適宜変更します。

cd /opt/bitnami
apache2/bin/htpasswd -cb apache2/APPNAME_users USERNAME PASSWORD

2./opt/bitnami/apps/APPNAME/conf/httpd-app.confを編集して以下のようにします。
追加4行と、Require all grantedをコメント化します。
AuthNameは、コンテンツごとに変えるとよろしいかもしれません。
しかも日本語は使えない感じです。

<Directory "/opt/bitnami/apps/APPNAME/htdocs">
 ...
   AuthType Basic
   AuthName MyAuthName
   AuthUserFile "/opt/bitnami/apache2/APPNAME_users"
   Require valid-user
 ...
 <IfVersion >= 2.3>
 # Require all granted
 </IfVersion>
 ...
</Directory>

3.プロキシを使っている場合は、/opt/bitnami/apps/APPNAME/conf/httpd-app.confファイルの最後に、以下を追加します。

<Location />
 AuthType Basic
 AuthName "Authentication required"
 Require valid-user
</Location>

そしてApacheの再起動です。

パスワードを変更したい場合は、以下のコマンドです。

sudo /opt/bitnami/apache2/bin/htpasswd /opt/bitnami/apache2/APPNAME_users USERNAME

ユーザを追加したい場合は、以下のコマンドです。

sudo /opt/bitnami/apache/bin/htpasswd -b /opt/bitnami/apache/APPNAME_users USERNAME PASSWORD

DBのパスワードを確認する

独自コンテンツを作成するとなると、DBへの接続が必要になる場合があります。
そんな時は、以下のコマンドを入力することで確かめることができます。
たぶんIDは、rootです。

 cat bitnami_application_password