瀏覽代碼

PDO options for e.g. SSL

https://github.com/FreshRSS/FreshRSS/issues/868
Alexandre Alapetite 10 年之前
父節點
當前提交
568ab2313d
共有 2 個文件被更改,包括 7 次插入6 次删除
  1. 3 0
      data/config.default.php
  2. 4 6
      lib/Minz/ModelPdo.php

+ 3 - 0
data/config.default.php

@@ -99,6 +99,9 @@ return array(
 		# MySQL table prefix.
 		'prefix' => '',
 
+		'pdo_options' => array(
+		),
+
 	),
 
 	# List of enabled FreshRSS extensions.

+ 4 - 6
lib/Minz/ModelPdo.php

@@ -53,21 +53,19 @@ class Minz_ModelPdo {
 		$this->current_user = $currentUser;
 		self::$sharedCurrentUser = $currentUser;
 
+		$driver_options = is_array($conf->db['pdo_options']) ? $conf->db['pdo_options'] : array();
+
 		try {
 			$type = $db['type'];
 			if ($type === 'mysql') {
 				$string = 'mysql:host=' . $db['host']
 				        . ';dbname=' . $db['base']
 				        . ';charset=utf8';
-				$driver_options = array(
-					PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',
-				);
+				$driver_options[PDO::MYSQL_ATTR_INIT_COMMAND] = 'SET NAMES utf8';
 				$this->prefix = $db['prefix'] . $currentUser . '_';
 			} elseif ($type === 'sqlite') {
 				$string = 'sqlite:' . join_path(DATA_PATH, 'users', $currentUser, 'db.sqlite');
-				$driver_options = array(
-					//PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
-				);
+				//$driver_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
 				$this->prefix = '';
 			} else {
 				throw new Minz_PDOConnectionException(