ハトネコエ Web がくしゅうちょう

プログラミングとかAndroid

Linux ( Fedora22 ) でサーバー構築するの、実際簡単だった

おもに参考になったページはこちら : PHPのインストールと基本的な設定 | WEBサービス創造記

LAMPなんて言葉は昔から知りながらも、
「でも、むずかしいんでしょう?」と思ってたらやってみたら簡単この上なかった。
(情報探すのに苦労したけど)

というわけで、Fedora22でやってみた流れ。
# 以降は説明用のコメントなので、実際に打ち込まないでね。

su  # スーパーユーザにする
パスワード:  # パスワード聞かれるのでroot(スーパーユーザ)のパスワード打ち込む

dnf install httpd php mysql php-devel php-mbstring php-mysqlnd php-mcrypt -y
  # httpd が Apache 。Apache、php、mysqlはたぶん最初からインストールされてるので、スルーされると思う

emacs /etc/httpd/conf/httpd.conf &
  # 余談だが、エイリアス設定してるので、emacs のとこは実際は em と打ってる。
  # vim の人は vi と打ってくれればいいし、どちらも慣れてない人は kwrite でもいいと思います。

テキストエディタでファイルを開いたら、文字列検索を使って

DirectoryIndex index.html

DirectoryIndex index.html index.php
に変更。(こうすると、index.html が無いときは index.php をトップページとして読み込むはず)

AddType application/x-httpd-php .php
を適当な場所に追加。( .php で終わるファイルはPHPとして扱ってね~ とサーバーに教える)

終わったら保存して閉じる。

apachectl restart
  # 今の変更を反映するため Apache の再起動
  # service httpd restart と打っても、結果はたぶん同じ

chkconfig httpd on
  # Linuxへログイン時に Apache が起動するように設定
  # (Windowsで言うところの「スタートアップ」への登録)

echo '<h1>Hello! My Server!</h1>' > /var/www/html/index.html
  # とりあえずトップページにHTMLファイルを置いてみる

echo '<?php phpinfo(); ?>' > /var/www/html/phpinfo.php
  # PHP が動くか確認したいので PHP ファイルも置いてみる

chown -hR UserName /var/www/
  # UserName のところには、ふだんログインするユーザーネームを書いてください
  # /var/www/ 以下のディレクトリ・ファイルの所有者がrootからユーザーに変わるので、なにかと便利になります

これで、自分のサーバーにファイルを置くことができました。
(自分のサーバー……と言っても、現状ではこのLinux上でのみ認識できるものですが。
PHPの練習としては、この状態で充分でしょう)

では、アクセスしてみましょう。

アカウントを作る時に指定したドメイン
localhost.localdomain
があるかと思いますが、(忘れた方は、Fedora22 KDEであれば、「アプリケーションランチャー」(Windowsで言うスタートボタン)をクリックして開かれるメニューで
しばらく待っていると、左下のユーザーの名前のとこに、<ユーザー名>@localhost.localdomain が表示されると思います。ので、そのアットマーク以降の部分ですね)

そのドメインをWebブラウザに入力する(http://localhost.localdomain)と、
http://localhost.localdomain  にはさっきのHTMLファイルが、
http://localhost.localdomain/phpinfo.php  にはこんな画面が表示されるのが確認できると思います。


このアドレスでなくとも、IPアドレスでもアクセスできまして、
コンソール上で

ip a

と打つと

1: lo:  mtu 65536 qdisc noqueue state UNKNOWN group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever

などなどと表示されると思うのですが、
この、inet って書いてある後ろからスラッシュの前までの数字(この場合 127.0.0.1 )をブラウザに打ち込んでアクセスできます。


と、ここまで行ったけれど、次は Virtual Box の外側のホストOSから、
このサーバーにアクセスできればなぁ……。うーん……。
でも、わざわざする必要もないか・・・。

広告を非表示にする