2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Apache と CGI(Perl) 備忘録

Last updated at Posted at 2021-05-26

はじめに

タイトル通り備忘録です
インストールからローカルネットワークから呼び出す
までやったとこをつらつらと書いていきます。

環境_2021/05/26

Windows 10 Pro
Apache 2.4.47
Active Perl 5.28.1

##Apache
###インストール

公式サイト様よりダウンロード
https://www.apachelounge.com/
インストール画面は割愛

以下はしてもしなくてもよい
###サービスとして登録
これをしておくとWebサーバーの起動を自動化できるので楽

コマンドプロンプトを管理者起動
Apache\binに移動

cd C:\Apache24\bin
httpd.exe -k install

「Windows セキュリティの重要な警告」が表示される
image.png
画像を適当に拾ってきたので画面が少し違うかも...

時と場合によってプライベート、パブリックのチェックし
アクセスを許可する(A)

サービスの確認して「Apache2.4」が追加されていればよき
image.png

###環境変数
本当にこれはどっちでもよい
わざわざcdでディレクトリ移動がめんどくさいよって時に(´・ω・`)

システムのプロパティ→詳細設定→環境変数
image.png

ユーザー環境変数のPathへ追記
image.png

ココではデフォPathですが
インストールで変更した場合はそれに合わせて変更

確認方法はコマンドプロンプトにて下記実行

httpd -v

バージョン情報が表示されれば問題なし

###ルートの変更

Apacheのデフォ状態だと
インストール→起動でサンプルページが表示できる様になっているが
そのままいじるのはナンセンスなので変更

とりあえず適当に
[C:\Test]を作成

ApacheのConfの編集
C:\Apache24\conf\httpd.confの258行目付近

DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">
↓
DocumentRoot "C:/Test"
<Directory "C:/Test">

変更後保存してApacheを再起動

httpd -k restart

ブラウザにてアクセス
http://localhost
http://実行端末のIPアドレス

多分こうなる
image.png

初期設定はこんなもんで...

##CGI(Perl

ダウンロード先
https://www.activestate.com/

インストール画面は割愛でC:\Perl64
コマンドプロンプトにてバージョンとインストール確認

perl -v

お次にApache側でCGIが実行できる様にします

###Conf

先程と同じく
C:\Apache24\conf\httpd.conf
の編集

必要なディレクトリ内のオプションにExecCGIを書き込みます。
すべてのディレクトリでCGIを許可する体でドキュメントルート
ついでにディレクトリ内が見られるのが困ることが多いので
Index of /を表示しないようにするオプション
272行目付近

Options Indexes FollowSymLinks
↓
Options FollowSymLinks ExecCGI

実際にCGIもしくはperlが動作するように??
ちょっと理解してない。。
421行目付近に2行追加

AddType application/x-httpd-cgi .cgi
AddType application/x-httpd-cgi .pl

430行目付近

#AddHandler cgi-script .cgi .pl
↓
AddHandler cgi-script .cgi .pl

確認のためにディレクトリアクセスしたときのTOPページ的な
292行目付近

DirectoryIndex index.html
↓
DirectoryIndex index.html index.cgi index.pl

Conf触ったので再読み込み的な意味での再起動
コマンドプロンプトで

httpd -k restart

###確認
C:\Testにindex.cgiを作成

Perlの確認もするのでこんな感じ

#!C:/Perl64/bin/perl
print "Content-type: text/html\n\n";
print "Hello World";

ブラウザにてアクセス
http://localhost
http://実行端末のIPアドレス

image.png

###終わり

これから何回触るかってくらいなので残しておこうと思いました。
今更感満載ですが、、誰かの目に止まればうれすぃ

2
0
0

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
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?