LoginSignup
13

More than 5 years have passed since last update.

Raspberry Pi でLAMP環境を構築する

Posted at

Rapverry Pi に最低限のLAMP環境を構築してみます。

0. 環境

0-1. OS

  • Raspbian GNU/Linux 8

0-2. 導入内容

  • Apache2
  • mod_php5
  • MySQL

0-3. ssh接続

$ ssh pi@< IP address >

1. Apach2について

1-1. apache2のインストール

$ sudo apt-get install apache2

1-2. 設定

mode_rewriteを有効化

$ sudo a2enmod rewrite
mode_rewriteに関する参考リンク

Apacheのmod_rewriteモジュールの使い方を徹底的に解説

en2enmod はシェルスクリプトらしいです。
/usr/sbin/a2enmod にインストールされているのでスクリプトを読めば使い方はわかるはず。

htaccessを有効化

# 下記を修正する
$ sudo vi /etc/apache2/apache2.conf

# AllowOverride を None から All へ
<Directory /var/www/>
  Options Indexes FollowSymLinks
  AllowOverride All
  Require all granted
</Directory>

スクリーンショット 2015-12-24 18.53.52.png

htaccessに関する参考リンク

.htaccessの書き方

1-3. ドキュメントルートの指定

$ sudo vi /etc/apache2/sites-available/000-default.conf

# 下記に設定
DocumentRoot /var/www/

1-4. 再起動する

$ sudo service apache2 restart

1-5. 動作確認

スクリーンショット 2015-12-24 5.56.05.png

2, MySQLについて

2-1, インストール

$ sudo apt-get install mysql-server

2-2. 文字コード設定

# 設定ファイルを変更
$ sudo vi /etc/mysql/my.conf

# 設定ファイルに以下を追加
[mysqld]
character-set-server=utf8 # デフォルトの文字コードをutf-8
skip-character-set-client-handshake # クライアントのリクエストが何であれutf-8で返す

2-3. ユーザー設定

$ mysql -u root # rootで起動

# root のセキュリティ設定
mysql > DELETE FROM mysql.user WHERE user = "" OR host = "::1";
mysql > SET PASSWORD FOR root@localhost = PASSWORD("password");
mysql > SET PASSWORD FOR root@127.0.0.1 = PASSWORD("password");
# 新規ユーザーの追加
mysql > GRANT ALL PRIVILEGES ON db.* TO user@localhost IDENTIFIED BY "password";

3 php5について

3-1. mod_phpをインストール

$ sudo apt-get install libapache2-mod-php5

3-2. MySQLモジュールの追加

$ sudo apt-get install php5-mysql

3-3. 動作確認

# phpファイルに変更
$ sudo mv /var/www/index.html /var/www/index.php

# 書き換え
$ sudo vi /var/www/index.php

<? php
phpinfo();

スクリーンショット 2015-12-24 20.06.30.png

以上で基本的な設定が完了しました。
参考になるサイトは多いですが、versionやOSが異なるとconfファイルの場所が違ったりするので、自分の場合を把握するのが面倒くさいですね。
以上!

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13