2017年3月18日土曜日

rasbperr pi webサーバの構築

・Apacheのインストール
 sudo apt-get install apache2

・PHPのインストール
 sudo apt-get install php5

・MySQLのインストール
 sudo apt-get install mysql-server

・PHPのモジュールのインストール
 sudo apt-get install php5-mysql php5-curl


✩Apacheの設定
 私はWeb公開用ディレクトリを/home/pi/webにしたかったので、以下のように設定しました。

 Apacheがインストールされているディレクトリへ移動
 cd /etc/apache2

 Apache全体の設定や公開するディレクトリの設定ファイル
 sudo vi /etc/apache2/apache2.conf
<Directory /home/pi/web>
       Options Indexes FollowSymLinks
       AllowOverride None
       Require all granted
</Directory>

 DocumentRootやErrorLog、CustomLogの設定ファイル
 sudo vi sites-enabled/000-default.conf
DocumentRoot /home/pi/web/
                <Directory /home/pi/web>
                                SSLOptions +StdEnvVars +ExecCGI
                </Directory>

*他のディレクトリを同時に定義するとApacheが起動しないことがあったので、
1つだけ定義しました。
メモ:Apacheの設定に問題がないか調べるコマンド
apachectl configtest

 sudo vi sites-enabled/default.conf
DocumentRoot /home/pi/web/

 Apacheを実行するユーザとグループの設定
 sudo vi envvars
export APACHE_RUN_USER=pi
export APACHE_RUN_GROUP=pi

perlのcgiを動かしたいので、以下を編集
sudo vi /etc/apache2/mods-available/mime.conf
(変更前)
#AddHandler cgi-script .cgi
(変更後)
AddHandler cgi-script .cgi .pl

モジュールを有効にする
sudo ln -s /etc/apache2/mods-available/cgi.load /etc/apache2/mods-enabled

perlを実行する場所を設定
sudo vi conf-available/serve-cgi-bin.conf
               <Directory "/home/pi/web">
                        AllowOverride None
                        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                        Require all granted
                </Directory>

perlのパスを/usr/local/bin/perlでも実行できるようにする
 sudo ln -s /usr/bin/perl /usr/local/bin/perl

*debian系は/usr/bin/perlにあるみたいです。
どこにインストールされているかわからない場合は
whereis perl コマンドで調べることができます。





0 件のコメント:

コメントを投稿