金子邦彦研究室インストールUbuntu, WSL2Apache Friends XAMPP for Linux 7.4.9 のインストール(Ubuntu 上)

Apache Friends XAMPP for Linux 7.4.9 のインストール(Ubuntu 上)

XAMPP for Linux のダウンロードとインストール(Ubuntu 上)

次の手順で,XAMPP for Linux のダウンロードとインストールと動作チェックを行う.

  1. Web ページを開く.

    https://www.apachefriends.org/jp/index.html

  2. Linux 版をダウンロードしたいので「linux 向け XAMPP」をクリック

    [image]
  3. ダウンロード開始の確認

    ダウンロードが始まるので確認する.

    [image]
  4. ダウンロードしたファイルの実行

    chmod 755 xampp-linux-x64-7.4.9-0-installer.run
    sudo ./xampp-linux-x64-7.4.9-0-installer.run
    

    [image]
  5. 画面の指示に従う.すると,インストールが始まる.

    [image]
  6. インストール終了の確認

    エラーメッセージが出ていないことを確認.

    [image]
  7. /opt/lampp にインストールされたことを確認

    ls -al /opt/lampp
    

    [image]
  8. 確認のため「/opt/lampp/bin/php -v」 を実行してみる.

    エラーメッセージが出ていないことを確認.

    [image]

    【エラーの例(1)】

    SELinux では,次のようなメッセージが出ることがある.

    /opt/lampp/bin/php: error while loading shared libraries: /opt/lampp/lib/libsybob.so.5: cannot restore segment prot after reloc: Permission denied
    

    [image]

    上記のエラーが出たときは、下記のような操作で, SELinux のセキュリティ設定を緩和 する.

    chcon -v -R -u system_u -r object_r -t textrel_shlib_t /opt/lampp/lib/libsybob.so.5.0.0
    chcon -v -R -u system_u -r object_r -t textrel_shlib_t /opt/lampp/lib/libct.so.3.0.0
    chcon -v -R -u system_u -r object_r -t textrel_shlib_t /opt/lampp/lib/libc-client.so.2007e
    

    【エラーの例(2)】

    「/lib/ld-linux.so.2 が無いよ」, 「libgcc_s.so.1 が無いよ」, 「libstdc++.so.6 が無いよ」というようなエラーが出ることがある.

    このときは,下記のように「yum provides ...」で,パッケージ名を調べる.

    yum provides /lib/ld-linux.so.2
    yum provides libgcc_s.so.1
    yum provides libstdc++.so.6
    

    パッケージ名が分かったら,「yum install ...」でインストールする.

    yum install glibc-2.10.1-4.i686
    yum install libgcc-4.4.0-4.i586
    yum install libstdc++-4.4.0-4.i586
    
  9. 試しに起動してみる

    エラーメッセージが出ないことを確認する

    sudo /opt/lampp/lampp start
    

    [image]
  10. 試しに Web ブラウザで xampp のトップページ を開いてみる

    Web ブラウザで http://localhost を開いてみる。

    下図のようなxampp の画面が現れれば OK.

    [image]
  11. セキュリティ設定

    下記の設定.これは lampp を起動した状態で行う.

    sudo /opt/lampp/lampp security
    

    [image]
  12. (オプション) /opt/lampp/apache2/conf/httpd.confの確認

    XXX.YYY.ZZZ.0/24 aaa.bbb.ccc.0/24 」 のところは, アクセスを許可したいマシンの IP アドレスの範囲指定を行う.

    Order deny,allow
    deny from all
    allow from 127,0.0.0/8 XXX.YYY.ZZZ.0/24 aaa.bbb.ccc.0/24
    

    [image]
  13. /etc/hosts の設定 (Apache 用)

    ホスト名とホストの完全修飾名を1行書き加える.

    設定例

    127.0.0.1 host host.domainname.com
    

    のように

  14. /opt/lampp/lampp の書き換え

    まず,「$XAMPP_ROOT/bin/mysql.server start > /dev/null」という行を探す

    [image]

    この行に「--user=mysql」を書き加える(要するに MySQL を UNIX の root 権限では実行しないということ)

    [image]
  15. ファイルの権限の設定

    sudo chown -R mysql:mysql /opt/lampp/var/mysql
    

    [image]
  16. lampp の再起動

    次のコマンドを実行.してみる.

    sudo /opt/lampp/lampp stop
    sudo /opt/lampp/lampp start
    

    Apache with SSL (and PHP5), MySQL, ProFTPD が起動することが分かる.

    [image]
  17. 再度 Web ブラウザで xampp のトップページ を開く

    Web ブラウザで http://localhost/ を開く

    [image]

    「Warning: file_get_contents(lang.tmp) [function.file-get-contents] failed to open stream]」というエラーが出たときは、ファイルのオーナの設定とと httpd.conf の設定を確認する

    [image]
  18. phpMyAdmin の起動チェック

    Web ブラウザで http://localhost/phpmyadmin/ を開き、先ほど設定したパスワードを使ってログインする.

    [image]

    [image]

    ■ 表示が出ない場合の対処 (1)

    リモート・サイトからアクセスする場合に表示が出ないことがある.

    まず /opt/lampp/logs/error_log を確認する.

    下図のように「client ... client denied by server configuration: /opt/lampp/htdocs/xampp」という表示が出ている場合には,apache の設定でアクセス拒否が行われているということ. /opt/lampp/etc/extra/httpd-xampp.conf の設定を確認する.その後「/sbin/service lampp restart」を実行

    [image]

    ■ 表示が出ない場合の対処 (2)

    下図のような「Existing configuration file (./config.inc.php) is not readable」というエラーメッセージが出た時の対処

    [image]

    chown apache /opt/lampp/phpmyadmin/config.inc.php
    

動作テスト

PHP に組み込まれている「拡張 (Extension)」の確認などを行ってみる.

  1. /opt/lampp/htdocs/xampp/lang.tmp の権限の設定

    touch /opt/lampp/htdocs/xampp/lang.tmp
    chmod g+r /opt/lampp/htdocs/xampp/lang.tmp
    chown nobody /opt/lampp/htdocs/xampp/lang.tmp
    
  2. Web ブラウザで xampp のトップページ を開く

    Web ブラウザで http://localhost/ を開く

  3. 日本語」をクリック

    [image]
  4. 左側のタブの中にある「phpinfo()」をクリック

    [image]

    下記のように,いろいろな情報が取り出せます.

    [image]