phppgadmin in nginx

nginx的安装参考
nginx的使用参考文档
本文讲一下phppgadmin 和 mediawiki两个虚拟服务器, 使用不同的端口的配置.
mediawiki 的搭建参考

下载phppgadmin, 解压到站点目录.
# wget https://github.com/phppgadmin/phppgadmin/tarball/master

# mv master phpPgAdmin-snapshot.tar.gz
# tar -zxvf phpPgAdmin-snapshot.tar.gz 
# cd phppgadmin-phppgadmin-ca302af/

配置phppgadmin : 
# cd conf/
[root@dba conf]# ll
total 8
-rw-rw-r-- 1 root root 6409 Jul 21 07:43 config.inc.php-dist
[root@dba conf]# cp config.inc.php-dist config.inc.php
[root@dba conf]# vi config.inc.php


<?php

        /**
         * Central phpPgAdmin configuration.  As a user you may modify the
         * settings here for your particular configuration.
         *
         * $Id: config.inc.php-dist,v 1.55 2008/02/18 21:10:31 xzilla Exp $
         */

        // An example server.  Create as many of these as you wish,
        // indexed from zero upwards.

        // Display name for the server on the login screen
        $conf['servers'][0]['desc'] = 'PostgreSQL9.3.3';

        // Hostname or IP address for server.  Use '' for UNIX domain socket.
        // use 'localhost' for TCP/IP connection on this computer
        $conf['servers'][0]['host'] = '172.16.3.150';

        // Database port on server (5432 is the PostgreSQL default)
        $conf['servers'][0]['port'] = 5432;

        // Database SSL mode
        // Possible options: disable, allow, prefer, require
        // To require SSL on older servers use option: legacy
        // To ignore the SSL mode, use option: unspecified
        $conf['servers'][0]['sslmode'] = 'disable';

        // Change the default database only if you cannot connect to template1.
        // For a PostgreSQL 8.1+ server, you can set this to 'postgres'.
        $conf['servers'][0]['defaultdb'] = 'template1';

        // Specify the path to the database dump utilities for this server.
        // You can set these to '' if no dumper is available.
        $conf['servers'][0]['pg_dump_path'] = '/opt/pgsql/bin/pg_dump';
        $conf['servers'][0]['pg_dumpall_path'] = '/opt/pgsql/bin/pg_dumpall';

        // 多个postgresql cluster的话, 序列增加即可. 如$conf['servers'][1]['host'] = ''.....

        // Example for a second server (PostgreSQL for Windows)
        //$conf['servers'][1]['desc'] = 'Test Server';
        //$conf['servers'][1]['host'] = '127.0.0.1';
        //$conf['servers'][1]['port'] = 5432;
        //$conf['servers'][1]['sslmode'] = 'allow';
        //$conf['servers'][1]['defaultdb'] = 'template1';
        //$conf['servers'][1]['pg_dump_path'] = 'C:\\Program Files\\PostgreSQL\\8.0\\bin\\pg_dump.exe';
        //$conf['servers'][1]['pg_dumpall_path'] = 'C:\\Program Files\\PostgreSQL\\8.0\\bin\\pg_dumpall.exe';


        /* Groups definition */
        /* Groups allow administrators to logicaly group servers together under
         * group nodes in the left browser tree
         *
         * The group '0' description
         */
        //$conf['srv_groups'][0]['desc'] = 'group one';

        /* Add here servers indexes belonging to the group '0' seperated by comma */
        //$conf['srv_groups'][0]['servers'] = '0,1,2';

        /* A server can belong to multi groups. Here server 1 is referenced in both
         * 'group one' and 'group two'*/
        //$conf['srv_groups'][1]['desc'] = 'group two';
        //$conf['srv_groups'][1]['servers'] = '3,1';

        /* A group can be nested in one or more existing groups using the 'parents'
         * parameter. Here the group 'group three' contains only one server and will
         * appear as a subgroup in both 'group one' and 'group two':
         */
        //$conf['srv_groups'][2]['desc'] = 'group three';
        //$conf['srv_groups'][2]['servers'] = '4';
        //$conf['srv_groups'][2]['parents'] = '0,1';

        /* Warning: Only groups with no parents appears at the root of the tree. */

        /* You can apply specific theme depending on servers, users and databases
         * The priority order is :
         *   * the theme defined for a server
         *   * the theme defined for a database apply over the server one
         *   * the theme defined for a user apply over the database one
         */
        /* Example for servers */
        //$conf['servers'][0]['theme']['default'] = 'default';
        /* Example for users */
        //$conf['servers'][0]['theme']['user']['specific_user'] = 'default';
        /* Example for databases */
        //$conf['servers'][0]['theme']['db']['specific_db'] = 'default';

        // Default language. E.g.: 'english', 'polish', etc.  See lang/ directory
        // for all possibilities. If you specify 'auto' (the default) it will use
        // your browser preference.
        $conf['default_lang'] = 'auto';

        // AutoComplete uses AJAX interaction to list foreign key values
        // on insert fields. It currently only works on single column
        // foreign keys. You can choose one of the following values:
        // 'default on' enables AutoComplete and turns it on by default.
        // 'default off' enables AutoComplete but turns it off by default.
        // 'disable' disables AutoComplete.
        $conf['autocomplete'] = 'default on';

        // If extra login security is true, then logins via phpPgAdmin with no
        // password or certain usernames (pgsql, postgres, root, administrator)
        // will be denied. Only set this false once you have read the FAQ and
        // understand how to change PostgreSQL's pg_hba.conf to enable
        // passworded local connections.
        $conf['extra_login_security'] = true;
        // 如果要使用pgsql, postgres, root, adminstrator等用户名登陆, 必须设置为false.

        // Only show owned databases?
        // Note: This will simply hide other databases in the list - this does
        // not in any way prevent your users from seeing other database by
        // other means. (e.g. Run 'SELECT * FROM pg_database' in the SQL area.)
        $conf['owned_only'] = false;

        // Display comments on objects?  Comments are a good way of documenting
        // a database, but they do take up space in the interface.
        $conf['show_comments'] = true;

        // Display "advanced" objects? Setting this to true will show
        // aggregates, types, operators, operator classes, conversions,
        // languages and casts in phpPgAdmin. These objects are rarely
        // administered and can clutter the interface.
        $conf['show_advanced'] = false;

        // Display "system" objects?
        $conf['show_system'] = false;

        // Minimum length users can set their password to.
        $conf['min_password_length'] = 1;

        // Width of the left frame in pixels (object browser)
        $conf['left_width'] = 200;

        // Which look & feel theme to use
        $conf['theme'] = 'default';

        // Show OIDs when browsing tables?
        $conf['show_oids'] = false;

        // Max rows to show on a page when browsing record sets
        $conf['max_rows'] = 30;

        // Max chars of each field to display by default in browse mode
        $conf['max_chars'] = 50;

        // Send XHTML strict headers?
        $conf['use_xhtml_strict'] = false;

        // Base URL for PostgreSQL documentation.
        // '%s', if present, will be replaced with the PostgreSQL version
        // (e.g. 8.4 )
        $conf['help_base'] = 'http://www.postgresql.org/docs/%s/interactive/';

        // Configuration for ajax scripts
        // Time in seconds. If set to 0, refreshing data using ajax will be disabled (locks and activity pages)
        $conf['ajax_refresh'] = 3;

        /** Plugins management
         * Add plugin names to the following array to activate them
         * Example:
         *   $conf['plugins'] = array(
         *     'Example',
         *     'Slony'
         *   );
         */
        $conf['plugins'] = array();

        /*****************************************
         * Don't modify anything below this line *
         *****************************************/

        $conf['version'] = 19;

?>

移动到站点目录 : 
# mv phppgadmin-phppgadmin-ca302af /site/phppgadmin
配置nginx, 新增一个server, 监听另一个端口. php使用fastcgi代理.

# vi nginx.conf
    server {
        listen       0.0.0.0:8001;
        server_name  dba.sky-mobi.com;
        root /site/phppgadmin;
        location / {
            index  index.php index.html index.htm;
        }
        location ~ \.php$ {
                include /opt/nginx1.6.0/conf/fastcgi_params;
                fastcgi_pass   127.0.0.1:9000;   # php-fpm的监听
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        }
    }

重载nginx.
nginx -s reload

在目标数据库创建一个普通用户, 用于登陆, 因为前面我们设置了不允许超级用户postgres 登陆.
digoal=# create role digoal nosuperuser login encrypted password 'digoal321';
CREATE ROLE
pg93@db-172-16-3-150-> cd $PGDATA
pg93@db-172-16-3-150-> vi pg_hba.conf
host all digoal 0.0.0.0/0 md5

打开浏览器, 输入URL即可 : 

[参考]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值