- インストール
- パッケージの更新
$ sudo apt update
$ sudo apt upgrade
- apache のインストール
$ sudo apt install apache2
- PHP のインストール
$ sudo apt install php
cURL は使用しないので「php-curl」オプションは付けない
バージョンの確認
$ php --version
PHP 7.3.19-1~deb10u1 (cli) (built: Jul 5 2020 06:46:45) ( NTS )
‥‥
- 上の2つのインストールで,Apache + PHP が自動的につくられている:
$ ls -la /etc/php/7.3/apache2/
drwxr-xr-x 2 root root 4096 Feb 11 13:16 conf.d
-rw-r--r-- 1 root root 71958 Jul 5 2020 php.ini
- apache の設定
- apache の設定ファイル:
$ ls -la /etc/apache2
-rw-r--r-- 1 root root 7224 Aug 26 05:08 apache2.conf
drwxr-xr-x 2 root root 4096 Feb 11 13:14 conf-available
drwxr-xr-x 2 root root 4096 Feb 11 13:14 conf-enabled
-rw-r--r-- 1 root root 1782 Aug 8 2020 envvars
-rw-r--r-- 1 root root 31063 Aug 8 2020 magic
drwxr-xr-x 2 root root 12288 Feb 11 13:16 mods-available
drwxr-xr-x 2 root root 4096 Feb 11 13:16 mods-enabled
-rw-r--r-- 1 root root 320 Aug 8 2020 ports.conf
drwxr-xr-x 2 root root 4096 Feb 11 13:14 sites-available
drwxr-xr-x 2 root root 4096 Feb 11 13:14 sites-enabled
- ポート番号 : 80
$ cat /etc/apache2/ports.conf | grep Listen
- ドキュメントルートの変更
デフォルトは /var/www/html
$ ls -la /var/www/html
-rw-r--r-- 1 root root 10701 Feb 11 13:14 index.html
これを,/home/pi/apache/www に変更する
$ mkdir /home/pi/apache
$ mkdir /home/pi/apache/www
$ sudo vi /etc/apache2/sites-available/000-default.conf
#DocumentRoot /var/www/html
DocumentRoot /home/pi/apache/www
- permission to access
$ sudo vi /etc/apache2/apache2.conf
ドキュメントルートの変更に合わせて,つぎの設定をする:
#
Options Indexes FollowSymLinks ExecCGI
AllowOverride None
Require all granted
この設定をしないと,つぎのようにアクセスが拒否される:
Forbidden
You don't have permission to access this resource.
- ログを置くディレクトリ : /var/log/apache2
$ ls -la /var/log/apache2
-rw-r----- 1 root adm 0 Feb 11 13:14 access.log
-rw-r----- 1 root adm 980 Feb 11 13:17 error.log
-rw-r----- 1 root adm 0 Feb 11 13:14 other_vhosts_access.log
- index ファイルの設定
$ sudo vi /etc/apache2/mods-enabled/dir.conf
DirectoryIndex を編集
#DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
DirectoryIndex index_j.phtml index.phtml index_j.html index.html
- 「.phtml」の MIME設定
$ sudo vi /etc/apache2/mods-enabled/mime.conf
つぎを追加:
AddType application/x-httpd-php .phtml .php
- PHP の設定── /etc/php/7.3/apache2/php.ini
$ cd /etc/php/7.3/apache2
$ ls -la
drwxr-xr-x 2 root root 4096 Feb 11 13:16 conf.d
-rw-r--r-- 1 root root 71958 Jul 5 2020 php.ini
$ ls -la conf.d
lrwxrwxrwx 1 root root 39 Feb 11 13:16 10-opcache.ini -> /etc/php/7.3/mods-available/opcache.ini
lrwxrwxrwx 1 root root 35 Feb 11 13:16 10-pdo.ini -> /etc/php/7.3/mods-available/pdo.ini
lrwxrwxrwx 1 root root 40 Feb 11 13:16 20-calendar.ini -> /etc/php/7.3/mods-available/calendar.ini
lrwxrwxrwx 1 root root 37 Feb 11 13:16 20-ctype.ini -> /etc/php/7.3/mods-available/ctype.ini
lrwxrwxrwx 1 root root 36 Feb 11 13:16 20-exif.ini -> /etc/php/7.3/mods-available/exif.ini
lrwxrwxrwx 1 root root 40 Feb 11 13:16 20-fileinfo.ini -> /etc/php/7.3/mods-available/fileinfo.ini
lrwxrwxrwx 1 root root 35 Feb 11 13:16 20-ftp.ini -> /etc/php/7.3/mods-available/ftp.ini
lrwxrwxrwx 1 root root 39 Feb 11 13:16 20-gettext.ini -> /etc/php/7.3/mods-available/gettext.ini
lrwxrwxrwx 1 root root 37 Feb 11 13:16 20-iconv.ini -> /etc/php/7.3/mods-available/iconv.ini
lrwxrwxrwx 1 root root 36 Feb 11 13:16 20-json.ini -> /etc/php/7.3/mods-available/json.ini
lrwxrwxrwx 1 root root 36 Feb 11 13:16 20-phar.ini -> /etc/php/7.3/mods-available/phar.ini
lrwxrwxrwx 1 root root 37 Feb 11 13:16 20-posix.ini -> /etc/php/7.3/mods-available/posix.ini
lrwxrwxrwx 1 root root 40 Feb 11 13:16 20-readline.ini -> /etc/php/7.3/mods-available/readline.ini
lrwxrwxrwx 1 root root 37 Feb 11 13:16 20-shmop.ini -> /etc/php/7.3/mods-available/shmop.ini
lrwxrwxrwx 1 root root 39 Feb 11 13:16 20-sockets.ini -> /etc/php/7.3/mods-available/sockets.ini
lrwxrwxrwx 1 root root 39 Feb 11 13:16 20-sysvmsg.ini -> /etc/php/7.3/mods-available/sysvmsg.ini
lrwxrwxrwx 1 root root 39 Feb 11 13:16 20-sysvsem.ini -> /etc/php/7.3/mods-available/sysvsem.ini
lrwxrwxrwx 1 root root 39 Feb 11 13:16 20-sysvshm.ini -> /etc/php/7.3/mods-available/sysvshm.ini
lrwxrwxrwx 1 root root 41 Feb 11 13:16 20-tokenizer.ini -> /etc/php/7.3/mods-available/tokenizer.ini
$ sudo cp php.ini php.ini.org
$ sudo vi php.ini
short_open_tag = On
(
- /var/www が root 権限になっているので,pi に変更
$ cd /var
$ sudo chown -R pi www
- テスト
- 起動
$ sudo service apache2 start
$ ps -ef | grep apache
root 8216 1 0 13:17 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 8218 8216 0 13:17 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 8219 8216 0 13:17 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 8220 8216 0 13:17 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 8221 8216 0 13:17 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 8222 8216 0 13:17 ? 00:00:00 /usr/sbin/apache2 -k start
- /home/pi/apache/www/index.phtml を作成:
$ vi /home/pi/apache/www/index.phtml
PC のブラウザからアクセス
http://192.168.1.150
- 停止
$ sudo service apache2 stop
|