操作系统: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
2. 安装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的网页。
3. 安装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的管理界面。