前提・実現したいこと
Linux初心者です.
PostgreSQLを入れたRDS内のTableに,EC2上のApacheを介してブラウザからアクセスたいのですが接続できません.
ブラウザには new PDO()の直前までしか表示されません.
<準備等>
インストール
yum install postgresql95.x86_64
yum install -y php72 php72-mbstring
ドキュメントルートに以下のphpファイルを置いてDBアクセスします.
こちらを参考に,ターミナルからのPostgreSQLへの接続は出来ることを確認しました.
psql -h <RDSのエンドポイント> -U <DBのユーザ名> -d <DB名>
ApacheのError logをcd /var/log/httpd/で見た結果,以下のメッセージがありました.
(私が以前弄ってたXAMPP環境では) php.ini内のextension=php_pdo_pgsql.dllを有効にすればPDOが使えたと思うのですが.AWS上では見当たりませんでした.
発生している問題・エラーメッセージ
PHP Fatal error: Uncaught Error: Class 'PDO' not found in /var/www/html/RDSTest.php:15\nStack trace:\n#0 {main}\n thrown in /var/www/html/RDSTest. php on line 15
該当のソースコード
php
1<!DOCTYPE html> 2<html> 3<head> 4<meta charset="UTF-8" /> 5<title>PostgreSQL_ConnectTest</title> 6</head> 7<body> 8 9<?php 10 11$dsn='pgsql:dbname=testdb; host=RDSエンドポイント;port=5432'; 12$user = 'user'; 13$password = 'pass'; 14 15try{ 16 print("接続します"); 17 $db = new PDO($dsn,$user,$password); 18 print '接続に成功しました!'; 19}catch (PDOException $e){ 20 print('Connection failed:'.$e->getMessage()); 21} 22 23?> 24</body> 25</html>
試したこと
yum install php-pdo_pgsql でPDOの追加をしましたがエラーが出ます.
txt
1 2読み込んだプラグイン:priorities, update-motd, upgrade-helper 3amzn-main | 2.1 kB 00:00:00 4amzn-updates | 2.5 kB 00:00:00 5依存性の解決をしています 6--> トランザクションの確認を実行しています。 7---> パッケージ php-pgsql.x86_64 0:5.3.29-1.8.amzn1 を インストール 8--> 依存性の処理をしています: php-pdo(x86-64) = 5.3.29-1.8.amzn1 のパッケージ: php-pgsql-5.3.29-1.8.amzn1.x86_64 9--> トランザクションの確認を実行しています。 10---> パッケージ php-pdo.x86_64 0:5.3.29-1.8.amzn1 を インストール 11--> 依存性の処理をしています: php-common(x86-64) = 5.3.29-1.8.amzn1 のパッケージ: php-pdo-5.3.29-1.8.amzn1.x86_64 12--> トランザクションの確認を実行しています。 13---> パッケージ php-common.x86_64 0:5.3.29-1.8.amzn1 を インストール 14--> 衝突を処理しています: php72-common-7.2.11-1.6.amzn1.x86_64 は php-common < 5.5.22-1.98 と衝突しています 15--> 依存性解決を終了しました。 16エラー: php72-common conflicts with php-common-5.3.29-1.8.amzn1.x86_64 17 問題を回避するために --skip-broken を用いることができます。 18 これらを試行できます: rpm -Va --nofiles --nodigest
補足情報
Server version: Apache/2.4.34 (Amazon)
PHP 7.2.11
インストールしたクライアントモジュール psql (PostgreSQL) 9.5.14
RDS PostgreSQL 9.5.4-R1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/19 10:28