【Raspberry Pi】Webサーバ apache を入れてみた【Linux】

ラズベリーパイで SSH を起動させ、Windows から SSH でアクセスできるように設定しました。
また、Ubuntu 系の OS のため、yum をインストールし、設定しました。

ラズベリーパイ(Raspberry Pi)とは

ラズベリーパイ(Raspberry Pi)は、超小型の低スペックな PC のことです。OS には、Linux が使われることが多いです。

USB が付いているので、マウスやディスプレイを接続して操作することができます。

RSコンポーネントRaspberry Pi 3 B +マザーボード

こんな感じのもので、1万円もあれば購入することができます。

以下は、Linux OS(Ubuntu系)が入っていることを前提として、設定したことのメモになります。

IP 確認方法

SSH 接続方法

自動起動設定

root@raspberrypi:~# systemctl enable ssh.service
Synchronizing state of ssh.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable ssh
Created symlink /etc/systemd/system/sshd.service → /lib/systemd/system/ssh.service.

root@raspberrypi:~# yum repolist all
リポジトリー ID リポジトリー名 状態
epel EPEL RPM Repository for Red Hat Enterprise Linux 無効
repolist: 0

FFFTP からアクセスできるようにする

FTP サーバのインストール

パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています
状態情報を読み取っています… 完了
以下のパッケージが新たにインストールされます:
vsftpd
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
143 kB のアーカイブを取得する必要があります。
この操作後に追加で 326 kB のディスク容量が消費されます。
取得:1 http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian stretch/main armhf vsftpd armhf 3.0.3-8 [143 kB]
143 kB を 1秒 で取得しました (73.4 kB/s)
パッケージを事前設定しています …
以前に未選択のパッケージ vsftpd を選択しています。
(データベースを読み込んでいます … 現在 137481 個のファイルとディレクトリがインストールされています。)
…/vsftpd_3.0.3-8_armhf.deb を展開する準備をしています …
vsftpd (3.0.3-8) を展開しています…
vsftpd (3.0.3-8) を設定しています …
Created symlink /etc/systemd/system/multi-user.target.wants/vsftpd.service → /lib/systemd/system/vsftpd.service.
systemd (232-25+deb9u4) のトリガを処理しています …
man-db (2.7.6.1-2) のトリガを処理しています …

デフォルトでは書き込みができない状態なので、書き込み可能(write_enable=YESのコメントを外す)になるように vi で編集する。

# Uncomment this to enable any form of FTP write command.
write_enable=YES

vsftpd を有効にして再起動

apache のインストール

Ubuntu 系の OSのため、ディレクトリ構成が Cent OS などとは異なるようです。

apache の起動

[ ok ] Starting apache2 (via systemctl): apache2.service.

一括してファイルの権限を変える方法

Perl を使えるように設定を変更する①

AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1. Set the ‘ServerName’ directive globally to suppress this message
Your MPM seems to be threaded. Selecting cgid instead of cgi.
Enabling module cgid.
To activate the new configuration, you need to run:
systemctl restart apache2

Perl を使えるように設定を変更する②(mime.conf)

# To use CGI scripts outside of ScriptAliased directories:
# (You will also need to add “ExecCGI” to the “Options” directive.)
#
#AddHandler cgi-script .cgi

変更後

AddHandler cgi-script .cgi .pl

ScriptAlias /cgi-bin/ “/var/www/cgi-bin/”
AddHandler cgi-script .cgi .pl

<Directory “/var/www/cgi-bin”>
AllowOverride None
Require all granted
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

apache2 の再起動

error_log の確認

/var/log/apache2/error_log

access_log の確認

/var/log/apache2/access_log

Perl モジュール(CGI.pm)のインストール

関連記事

囲碁|ブラウザ上でJavaScriptを使って棋譜データを再生する方法【WGO.js】

以前、将棋の棋譜をブラウザ上で再生する方法 を紹介しました。同様に、囲碁の棋譜再生も JavaScr

記事を読む

【Linux】文字化け対策に unar のインストールを試みた。

Windows で圧縮したファイルを Linux で解凍すると、文字化けが起こってしまいます。文字化

記事を読む

Linux|cp コマンドでディレクトリごとコピーし、ファイルの上書き確認されないようにする方法

Linux で cp コマンドを使って、ディレクトリごとコピーし、同一ファイル名があった場合に上書き

記事を読む

Apache の error_log で「(8)Exec format error: exec of 」エラー表示が出たときの対処法

Perl でウェブサイトを作っていて、Apache のエラーで少しはまったため、そのときのメモ。

記事を読む

【Linux】ファイルの文字コードを一括変換する方法|EUC-JP ⇒ UTF-8

Linux で、あるディレクトリ内のファイルの文字コードを EUC-JP から UTF-8 に一括変

記事を読む

指定ディレクトリ以下のファイルの内容を一括置換する方法|Linux

簡単なウェブサイトを Perl 作っていて、開発環境が Windows で、公開する環境が Linu

記事を読む

【情報処理学会】正会員から学生会員に変更する方法。

大学院に行くことになったので、入会していた情報処理学会を、 正会員から学生会員に変更

記事を読む

【Linux】ファイルの文字コードを調べる方法

Linux でファイルの文字コードを調べる必要があったので、その時のメモです。 いくつか方法が

記事を読む

no image

【ETL】手書き文字のデータベースをダウンロードしてみた

文字認識や筆者識別の研究を行う際、手書き文字のデータが必要になってきます。 そのあたりの研究を

記事を読む

Windows で Scala をインストールする。

Windows に Scala というプログラミング言語をインストールしたときのメモです。Java,

記事を読む

【Python】pip3 で「cannot import name ‘main’」エラーが出たときの対処法。

Python でライブラリをインストールする際に、pipを使います。

【mecab-python3】parseToNode で surface が正しく取得できないときの対処法。

python3 で mecab-python3 を使うと、parseT

【Python】形態素解析器 Mecab を Linux(Ubuntu)で使ってみた。

Linux の Ubuntu OS に、形態素解析器 Mecab をイ

【Python】NLTK(自然言語処理ライブラリ)を使ってみた。

Python の自然言語処理ライブラリである NLTK を Linux

【Python】OpenCV を使って顔画像を検出してみた。

OpenCV のインストール Numpy のインストール [c

→もっと見る

PAGE TOP ↑