如何在Ubuntu 12.04上安装和使用phpPgAdmin

phpPgAdmin是一个基于php的Web应用程序,它为postgresql系统提供了一个GUI界面。它执行与phpMyAdmin类似的功能,它允许用户在MySQL中的可视化程序中操作数据库信息。这里是如何安装

关于phpPgAdmin

phpPgAdmin是一个基于php的Web应用程序,它为postgresql系统提供了一个GUI界面。 它执行与phpMyAdmin类似的功能,它允许用户在MySQL中的可视化程序中操作数据库信息。

第一步 - 安装phpPgAdmin

首先确保apt-get存储库是最新的:

sudo apt-get update

一旦进程完成,继续安装postgresql,有用的其他依赖项,和phpgadmin。 在安装过程中,phpPgAdmin还将安装所需的php和apache软件包。

sudo apt-get install postgresql postgresql-contrib phppgadmin

启动Apache:

sudo service apache2 start

第二步 - 调整安全设置

一旦phpgadmin安装后,您可以通过访问此时将 / phpPgAdmin的访问它。

您可以运行以下命令来显示您的服务器的IP地址。

ifconfig eth0 | grep inet | awk '{ print $2 }'

但是,您可能会发现尝试访问phpPgAdmin页面可能会导致403错误。

为了使此网页可以访问,我们应该向所有访问者提供此网页(不必担心,我们会在下一步中将其锁定):

sudo nano /etc/apache2/conf.d/phppgadmin

在文件中找到以下部分,并取消注释行“全部允许”。 该部分应如下所示:

order deny,allow
deny from all
allow from 127.0.0.0/255.0.0.0 ::1/128
allow from all

配置.htaccess认证

允许.htaccess文件,我们可以继续设置一个本机用户,登录将需要甚至访问phpPgAdmin登录页面。

首先在您的网站的配置文件中创建.htaccess身份验证部分。 例如,我将使用默认网站:

sudo nano /etc/apache2/sites-enabled/000-default

后续设置用户授权。 在虚拟主机文件中创建一个新的部分,在其中粘贴以下信息:

&ltDirectory "/usr/share/phpPgAdmin">
        AuthUserFile /etc/phpPgAdmin/.htpasswd
        AuthName "Restricted Area"
        AuthType Basic
        require valid-user
&lt/Directory>

下面您将看到每行的快速说明

  • 的AuthUserFile:该行指定的服务器路径密码文件(我们将在下一步创建)。
  • 进行AuthType:这是指将用于检查该密码验证的类型。 通过HTTP检查密码,并且不应更改关键字Basic。
  • AuthName指令:这是将在密码提示中显示的文本。 你可以把任何东西放在这里。
  • 需要有效的用户:这行告诉,只有在密码文件中定义的用户可以访问phpPgAdmin的登录屏幕.htaccess文件。

创建htpasswd文件

现在我们将继续创建有效的用户信息。

首先创建一个htpasswd文件。 使用htpasswd命令,并将文件放在所选的目录中,只要它不能从浏览器访问。 虽然你可以命名任何你喜欢的密码文件,惯例是命名它.htpasswd。

sudo htpasswd -c /etc/phpPgAdmin/.htpasswd username

提示将要求您提供和确认密码。

一旦保存用户名和密码对,您可以看到密码在文件中加密。

FInish通过重启apache:

sudo service apache2 restart

访问phpPgAdmin

phpPgAdmin现在将更安全,因为只有授权用户才能访问登录页面。 访问youripaddress / phpPgAdmin应该显示一个屏幕 phpPgAdmin

使用您生成的用户名和密码填写。 登录后,您可以访问phpPgAdmin与您的Postgres用户名和密码。

Postscript - 如何创建一个Postgres用户

更改认证配置文件中的认证方法:

sudo nano /etc/postgresql/9.1/main/pg_hba.conf

可以在以下行中进行更改:

# "local" is for Unix domain socket connections only
local   all             all                                    md5

要开始创建用户,请首先切换到默认超级用户并创建用户将登录的数据库:

sudo su - postgres

随后,创建一个新数据库,您将在其中存储表:

createdb newdb

虽然已经创建了数据库,但唯一有权访问它的用户是默认的postgres用户。 我们可以允许其他用户通过创建新用户来访问和操作此数据库。

以默认超级用户身份登录后,您可以前进到在PostgreSQL系统中创建更多角色。

要为用户提供密码,可以向createuser命令添加选项-P:

createuser -P
Enter name of role to add: newuser
Enter password for new role: 
Enter it again: 
Shall the new role be a superuser? (y/n) y
Password:  enter the superuser’s password here

然后,您可以通过几种方式之一登录postgres。

如果使用对等标识登录,可以直接键入以下命令,指定要登录的数据库:

psql newdb

如果您使用md5标识登录,可以包括您希望登录的用户:

psql –U newuser  -W newdb
作者Etel Sverdlov