このWebサイト ひつじ帳 は、管理者がWEB関連の技術をまとめた備忘録サイトです。 Linux,CentOS,PHP,MySQL,Blogger,JavaScript,CSS について記録しています。

CentOS-7.1/Web管理ツール

[ CentOS-7.1 ]

Web管理ツール

ユーザー "webmaster" 作成

  • Webツール管理用のユーザーとして "webmaster" を作成する。


##■ "webmaster" ユーザーを作成する
[root@localhost ~]# useradd webmaster
[root@localhost ~]#

##■ "webmaster" のパスワードを設定する
[root@localhost ~]# passwd webmaster
Changing password for user webmaster.
New UNIX password:               <--★ webmaster のパスワード応答
Retype new UNIX password:        <--★ webmaster のパスワード応答(確認)
passwd: all authentication tokens updated successfully.

Apache 仮想ホストを追加


##■ 仮想ホストの設定ファイルを編集する
[root@localhost ~]# vi /etc/httpd/conf.d/vhost.conf

--------------------------------------------------
##■ ファイルの最下行に追記する
<VirtualHost *:80>
  ## webmaster.vm.lan
  SuexecUserGroup webmaster webmaster
  ServerName webmaster.vm.lan
  ServerAlias *.webmaster.vm.lan
  DocumentRoot /home/webmaster/public_html
  # http -> https
  <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule ^/(.*)$ https://%{HTTP_HOST}/$1 [L,R]
  </IfModule>
</VirtualHost>
<VirtualHost *:443>
  # https://webmaster.vm.lan
  SuexecUserGroup webmaster webmaster
  DocumentRoot /home/webmaster/public_html
  ServerName webmaster.vm.lan
  ServerAlias *.webmaster.vm.lan
  SetEnv HTTPS "on"
  FcgidWrapper /home/webmaster/.fast-cgi-bin/php.cgi .php
</VirtualHost>
--------------------------------------------------

##■ 保存して編集終了
:wq
[root@localhost ~]#

##■ 設定の文法をチェックする
[root@localhost ~]# apachectl configtest
Syntax OK
[root@localhost ~]#

##■ httpd 再読み込み
[root@localhost ~]# systemctl reload httpd.service
[root@localhost ~]#

アクセス制限

  • 認証情報のユーザーは、"admin" です。


##■ "webmaster" ユーザーに変身する
[root@localhost ~]# su - webmaster
[webmaster@localhost ~]$ 

##■ ディレクトリを作成する
[webmaster@localhost ~]$ mkdir /home/webmaster/admin
[webmaster@localhost ~]$

##■ .htdigest ファイル新規作成&ユーザーを新規作成する (ユーザー名は admin)
[webmaster@localhost ~]$ htdigest -c /home/webmaster/admin/.htdigest "Webmaster" admin
Adding password for admin in realm Webmaster.
New password:               <--★ パスワードを入力する
Re-type new password:       <--★ パスワードを再入力する
[webmaster@localhost ~]$

##■ .htaccess ファイルを作成する
[webmaster@localhost ~]$ vi /home/webmaster/public_html/.htaccess

--------------------------------------------------
AuthUserFile /home/webmaster/admin/.htdigest
AuthGroupFile /dev/null
AuthType Digest
AuthName "Webmaster"
require valid-user
--------------------------------------------------

##■ 保存して編集終了
:wq
[webmaster@localhost ~]$

##■ "root" ユーザーに戻る
[webmaster@localhost ~]$ exit
[root@localhost ~]#

PHP 設定変更

  • PHPの実行条件を緩く設定する


##■ "webmaster" ユーザーに変身する (webmaster ユーザーに変身していない場合)
[root@localhost ~]# su - webmaster
[webmaster@localhost ~]$

##■ PHP 設定ファイルを作成する
[webmaster@localhost ~]$ vi /home/webmaster/public_html/.user.ini

--------------------------------------------------
post_max_size        = 500M
upload_max_filesize  = 500M
max_execution_time   = 3600
max_input_time       = 3600
--------------------------------------------------

##■ 保存して終了
:wq
[webmaster@localhost ~]$

##■ "root" ユーザーに戻る
[webmaster@localhost ~]$ exit
ログアウト
[root@localhost ~]#

phpMyAdmin

  • ※ MySQL をインストールしている必要があります。

  • phpMyAdmin 公式サイト
    https://www.phpmyadmin.net/

phpMyAdmin インストール


##■ "webmaster" ユーザーに変身する (webmaster ユーザーに変身していない場合)
[root@localhost ~]# su - webmaster
[webmaster@localhost ~]$ 

##■ ディレクトリを移動する
[webmaster@localhost ~]$ cd /home/webmaster/public_html
[webmaster@localhost public_html]$

##■ phpMyAdminをダウンロードする
[webmaster@localhost public_html]$ wget https://files.phpmyadmin.net/phpMyAdmin/4.4.15/phpMyAdmin-4.4.15-all-languages.tar.gz
[webmaster@localhost public_html]$

##■ phpMyAdmin 圧縮ファイルを解凍する
[webmaster@localhost public_html]$ tar -xzvf phpMyAdmin-4.4.15-all-languages.tar.gz
[webmaster@localhost public_html]$

##■ phpMyAdmin ディレクトリ名を変更する
[webmaster@localhost public_html]$ mv phpMyAdmin-4.4.15-all-languages phpMyAdmin
[webmaster@localhost public_html]$

##■ 設定ファイルをバックアップ
[webmaster@localhost public_html]$ cp -a phpMyAdmin/config.sample.inc.php phpMyAdmin/config.inc.php
[webmaster@localhost public_html]$

##■ 設定ファイルを編集する
[webmaster@localhost public_html]$ vi phpMyAdmin/config.inc.php

--------------------------------------------------
##★ ログインタイムアウトの時間を長く設定する (追記する) (※ 任意)
ini_set( 'session.gc_maxlifetime', ($cfg['LoginCookieValidity'] = 86400) );


##★ パスフレーズを設定する
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
  ## ↓ 設定する
$cfg['blowfish_secret'] = 'pass'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */


##★ SSL用URIの設定
// $cfg['blowfish_secret'] の下に追記する
$cfg['PmaAbsoluteUri'] = 'https://'.$_SERVER['HTTP_HOST'].'/phpMyAdmin/';
$cfg['ForceSSL'] = true;
--------------------------------------------------

##■ 保存して終了
:wq
[webmaster@localhost public_html]$

##■ phpMyAdmin 圧縮ファイルを削除する
[webmaster@localhost public_html]$ rm -rf phpMyAdmin-4.4.15-all-languages.tar.gz
[webmaster@localhost public_html]$

##■ "root" ユーザーに戻る
[webmaster@localhost ~]$ exit
ログアウト
[root@localhost ~]#

確認

ブラウザから https://webmaster.vm.lan/phpMyAdmin/ にアクセスして、画面が表示されればインストールは成功です。

phpPgAdmin

  • ※ PostgreSQL をインストールしている必要があります。

  • phpPgAdmin 公式サイト
    http://phppgadmin.sourceforge.net/doku.php?id=download


##■ "webmaster" ユーザーに変身する (webmaster ユーザーに変身していない場合)
[root@localhost ~]# su - webmaster
[webmaster@localhost ~]$ 

##■ ディレクトリを移動する
[webmaster@localhost ~]$ cd /home/webmaster/public_html
[webmaster@localhost public_html]$

##■ phpPgAdminをダウンロードする
[webmaster@localhost public_html]$ wget http://sourceforge.net/projects/phppgadmin/files/phpPgAdmin%20%5Bstable%5D/phpPgAdmin-5.1/phpPgAdmin-5.1.tar.gz
[webmaster@localhost public_html]$

##■ phpPgAdmin 圧縮ファイルを解凍する
[webmaster@localhost public_html]$ tar -xzvf phpPgAdmin-5.1.tar.gz
[webmaster@localhost public_html]$

##■ ディレクトリ名を変更する
[webmaster@localhost public_html]$ mv phpPgAdmin-5.1 phpPgAdmin
[webmaster@localhost public_html]$

##■ 設定ファイルをバックアップ
[webmaster@localhost public_html]$ cp -a phpPgAdmin/conf/config.inc.php phpPgAdmin/conf/config.inc.php.org
[webmaster@localhost public_html]$

##■ 設定ファイルを編集する
[webmaster@localhost public_html]$ vi phpPgAdmin/conf/config.inc.php

--------------------------------------------------
##★ postgres ユーザーでのログインを許可しない (許可する=false 許可しない=true)
$conf['extra_login_security'] = true;
  ## ↓ 変更する
$conf['extra_login_security'] = false;

##★ データベースの所有者以外にデータベースを表示 (表示する=false 表示しない=true)
$conf['owned_only'] = false;
  ## ↓ 変更する
$conf['owned_only'] = true;
--------------------------------------------------

##■ 保存して終了
:wq
[webmaster@localhost public_html]$

##■ phpPgAdmin 圧縮ファイルを削除する
[webmaster@localhost public_html]$ rm -rf phpPgAdmin-5.1.tar.gz
[webmaster@localhost public_html]$

##■ "root" ユーザーに戻る
[webmaster@localhost ~]$ exit
ログアウト
[root@localhost ~]#

確認

ブラウザから https://webmaster.vm.lan/phpPgAdmin/ にアクセスして、画面が表示されればインストールは成功です。

phpPgAdmin マルチバイト文字の不具合対策

  • CentOS-7.1 + PHP-5.4 + PostgreSQL-9.2 のインストール環境で発生。
  • テーブル一覧のフィールドが日本語の場合、値が空になるフィールドがある (マルチバイト文字の変換に失敗している)


##■ /classes/Misc.php 373行目あたり

default:
 // If the string contains at least one instance of >1 space in a row, a tab
 // character, a space at the start of a line, or a space at the start of
 // the whole string then render within a pre-formatted element (<pre>).


 //▼ 追加する
 // ※ 不具合修正 日本語変換で文字列が消失する
 if ($type == 'text' && strlen($str) != mb_strlen($str)) {
  $str = mb_convert_encoding($str, 'UTF-8', 'UTF-8');
 }
 //▲ 追加する


 if (preg_match('/(^ |  |\t|\n )/m', $str)) {
  $tag = 'pre';
  $class = 'data';
  $out = htmlspecialchars($str);
 } else {
  $out = nl2br(htmlspecialchars($str));
 }



0 件のコメント:

人気記事

このブログを検索