Linux下apache+phppgadmin+postgresql安装配置

Posted on 2013-12-23 15:40  JasmineLiu  阅读(1527)  评论(0编辑  收藏  举报

Linux下apache+phppgadmin+postgresql安装配置

操作系统:CentOS

安装包:httpd(首选yum), php(包括php以及php-pgsql,php-mbstring,首选yum), phppgadmin , postgresql 。

 

一、配置php项目部署环境

  1. 关闭Centos默认的selinux:

     vi /etc/selinux/config

        SELINUX=disabled

     重启:

     /sbin/init 6 

  1. 安装apache(手动安装文件,如:httpd-2.4.4.tar.gz或yum安装均可)

[root@localhost conf]#yum install httpd

默认会安装到/etc/httd/下面

[root@localhost conf]# which httpd

/usr/sbin/httpd

安装完毕后,可以先启动服务service httpd start,然后到浏览器输入地址:http://host:80,正常会出现apache test page。

  1. 安装php(手动或者yum安装)

    [root@localhost conf]#yum install php

[root@localhost conf]# which php

/usr/bin/php

[root@localhost conf]#yum install php-pgsql

         [root@localhost conf]#yum install php-mbstring

 

二、安装并配置postgresql数据库

  1. 正常安装postgresql。
  2. 修改pg_hba.conf配置文件,使得数据库可以允许外部访问。

具体可以配置为:

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only

local   all             all                                     md5

# IPv4 local connections:

host    all             all             127.0.0.1/32            md5

host    all             all             0.0.0.0/0            md5

# IPv6 local connections:

host    all             all             ::1/128                 trust

host    all             all             0.0.0.0/0               trust

 

三、部署并配置phPgAdmin

  1. 下载:phpPgAdmin-5.1.tar.gz ,并解压到到/var/www/ phpPgAdmin-5.1目录下;
  2. 配置所管理的数据库的参数:

[root@web-dev-machine phppgadmin]# vi /var/www/phppgadmin/conf/config.inc.php

其中必须修改的是: 

$conf['extra_login_security'] = false;

其他的可以根据所管理的PostgreSQL数据库的安装情况类配置,如:

// Display name for the server on the login screen

    $conf['servers'][0]['desc'] = 'PostgreSQL';

 

    // Hostname or IP address for server.  Use '' for UNIX domain socket.

    // use 'localhost' for TCP/IP connection on this computer

    $conf['servers'][0]['host'] = '192.168.100.101';

 

     // 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'] = 'allow';

 

     // 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/pg932/bin/pg_dump';

      $conf['servers'][0]['pg_dumpall_path'] = '/opt/pg932/bin/pg_dumpall';

 

注意:以上pg_dump_path和pg_dumpall_path在phpPgAdmin中执行导出数据库时才调用,所以一开始配置错误可能不会看到报错,执行导出时就会报错。

 

四、配置php 项目源文件目录以及监听端口

vi /etc/httpd/conf/httpd.conf

首先找到端口(默认为80,根据实际情况,可改可不改)

#

# Listen: Allows you to bind Apache to specific IP addresses and/or

# ports, in addition to the default. See also the <VirtualHost>

# directive.

#

# Change this to Listen on specific IP addresses as shown below to

# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)

#

#Listen 12.34.56.78:80

Listen 80

 

然后是php的文件目录(必须添加自己的项目的目录,可以直接添加到配置文件最后边)

#

# "/var/www/cgi-bin" should be changed to whatever your ScriptAliased

# CGI directory exists, if you have that configured.

#

<Directory "/var/www/cgi-bin">

    AllowOverride None

    Options None

    Order allow,deny

    Allow from all

</Directory>

 

#liuyy

#phpPgAdmin

Alias /phppgadmin "/var/www/phpPgAdmin"

<Directory "/var/www/phpPgAdmin">

  Options Indexes Multiviews

  AllowOverride None

  Order allow,deny

  Allow from all

</Directory>

 

注意:/phppgadmin才是在浏览器中要输入的地址,而不是文件名(phpPgAdmin)本身。

 

五、以上配置完毕后,在terminal中重启apache服务:service httpd restart

到浏览器中输入地址:http://ip:port/ phppgadmin   (默认端口80 可以省略)

正常会出现phppgadmin的管理界面。

 

Copyright © 2024 JasmineLiu
Powered by .NET 9.0 on Kubernetes