我正在尝试使用 Postgres 在 Red Hat 上安装 Silverstripe 2.4.10。
所以我下载了 v2.4.10,我在我的 httpd.conf 中添加了一个新的 vHost:
<VirtualHost *:80>
ServerName silverstripe.localhost
ServerAlias silverstripe.localhost
ServerAdmin root@silverstripe.localhost
DocumentRoot /var/www/html/SilverStripe-cms-v2.4.10
ErrorLog /var/www/html/silverstripe/silverstripe.com-error_log
CustomLog /var/www/html/silverstripe/silverstripe.com-access_log common
<Directory "/var/www/html/silverstripe/SilverStripe-cms-v2.4.10">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
我下载了 postgres 包并将其解压到 /var/www/html/silverstripe/SilverStripe-cms-v2.4.10 中。
我导航到 SilverStripe 的子域 URL: http://silverstripe.localhost/
我需要安装.php,我添加了我的 Postgres 数据库凭据,但 Silverstripe 不断告诉我它无法连接到数据库。
我通过创建一个小的 PHP 脚本验证了我的数据库凭据:
<?php
$db = pg_connect("host=127.0.0.1 port=5432 dbname=SS_mysite user=silverstripe password=");
$result = pg_query($db, "SELECT * FROM test_table_pgtest");
while ($row = pg_fetch_row($result)) {
echo "Id: $row[0] Name: $row[1]";
echo "<br />\n";
}
?>
该脚本执行良好,但 silverstripe 不接受相同的数据库凭据。错误是:我在“127.0.0.1:5432”上找不到数据库服务器:PostgreSQL 需要有效的用户名和密码才能确定服务器是否存在。
这真的很烦人。
Postgres 模块给出了运行指令:dev/build
不幸的是,这也只会导致 404 错误。http://silverstripe.localhost/dev/build只会返回 404 错误。我还能做些什么或检查以改进它?
当然,数据库确实存在并且用户确实可以工作(请参阅我的运行良好的测试脚本)。
此外,这个开发/构建的东西根本不起作用,从文档中不清楚这是否打算在您运行安装程序之前起作用。原因如果是这样...... Postgres 模块告诉用户预先运行该脚本安装有点奇怪。