現在位置: ホーム / みらくるブログ / CentOS7+Apache+Ajax+PHP+PostgreSQL でインタラクティブなページづくり

CentOS7+Apache+Ajax+PHP+PostgreSQL でインタラクティブなページづくり

こんにちは、ニックネーム たいちょう です。 松江ラボというからには、なにか新しい実験をしたいと思い立ちました。 Linux OS に webサーバを立ち上げて、インタラクティブなページをつくったら楽しいかもです。 せっかくですから、新しい OSで試してみようと思います。

こんにちは、ニックネーム たいちょう です。

松江ラボというからには、なにか新しい実験をしたいと思い立ちました。
Linux OS に webサーバを立ち上げて、インタラクティブなページをつくったら楽しいかもです。

せっかくですから、新しい OSで試してみようと思います。

あ、ちなみに、この記事は、ミラクル・リナックスが推奨するものではありません。あくまで、私、たいちょう の Linux OSを使ってみる実験ですから、細かい所はご容赦くださいね。

本来ならば、弊社製品「Asianux Server 7」を使用して解説したいところですが、利用の際にはライセンスをご購入いただく必要があります。そのため、今回は類似構成ディストリビューションのCentOS 7を使用して解説します。

では、第1日目を始めましょう。

CentOS-7 を仮想サーバにインストールします。
VirtualBoxに構築していきます。

http://ftp.riken.jp/Linux/centos/7.1.1503/isos/x86_64/ から、
CentOS-7-x86_64-Everything-1503-01.iso
をダウンロードします。
VirtualBox に、新規作成した領域(メモリ4G,ディスク50G,ネットワークは、1つ目はNAT,2つ目はホストオンリーアダプター)にストレージでダウンロードした iso ファイルを選択して、起動します。
インストールしていきます。
270ぐらいのパッケージしか入らなかったみたいです。

# yum grouplist

で、grouplist を確認してみます。

oops! ネットワークが有効になっていなかったら有効にします。

# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
onboot=yes

# vi /etc/sysconfig/network-scripts/ifcfg-enp0s8
onboot=yes

# systemctl restart NetworkManager.service
# yum groupinstall "X Window System"
# yum groupistall "GNOME Desktop"
# yum groupinstall "Basic Web Server"
# yum groupinstall "Server with GUI"
Applications->System Tools->Settings->Region & Languages

で、日本語にします。

# yum install postgresql
# yum install php
# yum install php-pgsql
# yum install php-mbstring

そう、隊長は PostgreSQL 派なんです。。

# df -h
# free -h

ちょっと、SELinuxのことが気になっちゃいました。

# sestatus

enable になっていますね。
これ、そのままでいきましょう。

# vim /etc/httpd/conf/httpd.conf

サーバのファイルが丸見えにならないようにします。
144 行目

#OPtions Indexes FollowSymLinks
Options FollowSymLinks

.httaccess が全てのディレクトリで有効になるようにします。
152 行目

#AllowOverride None
AllowOverride All

php ファイルが有効になるようにします。
165 行目

#DirectoryIndex index.html
DirectoryIndex index.html index.php


簡単なテストページをスクラッチから作って表示されることを確認しましょう。

# vim /var/www/html/index.html
<html>
<head>
<title>index</title>
</head>
<body>
This is a test page.
</body>
</html>

保存します。

下記はレガシーコマンド、chkconfig と同様で、httpd がサーバ起動時に
立ち上がるようにしています。

# systemctl status httpd.service
# systemctl start httpd.service
# systemctl status httpd.service
# systemctl enable httpd.service

ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'
と表示されることを確認します。

そういえば、ブラウザソフトが入ってなかったです。

# yum install firefox

Applications -> Firefox Web Browser
ブラウザから、
http://localhost  として、
This is a test page.
が確認できれば OK です。

html ではなく、php ファイルで作ったページが表示されるかを確認します。

# cd /var/www/html
# mv index.html index.html_save
# vim index.php

<?php
echo "hello world!";

保存します。

http://localhost  として、
hello world!
が確認できればOKです。

SELinuxの確認です。

# ls -laZ

SELinuxは、有効化していますので、コンテキストを確認します。Z は、SELinux
が有効化されていると使えるオプションです。
unconfined_u:object_r:httpd_sys_content_t:s0 index.html_save
unconfined_u:object_r:httpd_sys_content_t:s0 index.php
となっているのを確認します。

特に、httpd_sys_content_t となっていればOKです。

# systemctl set-default graphical.target

これは、以前のOSで/etc/inittab で 5 にするのと一緒です。

これで、再起動後に、GUIが立ち上がるようになります。

#shutdown -r now    

 

そろそろ、日も暮れてきました。

土日は、島根城に市民の作った灯籠がライトアップされるんです。
週末がとても楽しみです。

じゃ、今日はこの辺で。

 

タグ: