Saltstack Official PHP Formula
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

3417 lines
163KB

  1. # -*- coding: utf-8 -*-
  2. # vim: ft=jinja
  3. {% set pillar_php_version = salt['pillar.get']('php:version', '7.0') %}
  4. {%- if pillar_php_version is iterable and pillar_php_version is not string %}
  5. {%- set php_version = pillar_php_version[0]|string %}
  6. {% else %}
  7. {%- set php_version = pillar_php_version|string %}
  8. {% endif %}
  9. {%- set freebsd_php_version = php_version.replace('.', '') %}
  10. {%- if salt['grains.get']('os') == "Ubuntu" %}
  11. {%- set use_external_repo = salt['pillar.get']('php:use_external_repo', False) %}
  12. {%- if use_external_repo %}
  13. {%- if salt['grains.get']('osrelease')|string >= '16.04' %}
  14. {%- set php = salt['pillar.get']('php', {
  15. 'lookup': salt['grains.filter_by']({
  16. 'Debian': {
  17. 'pkgs': {
  18. 'adodb': 'libphp-adodb',
  19. 'apache2': 'libapache2-mod-php' + php_version,
  20. 'apc': 'php-apcu',
  21. 'apcu': 'php-apcu-bc',
  22. 'bcmath': 'php' + php_version + '-bcmath',
  23. 'build_pkgs': [
  24. 'libssl-dev',
  25. 'libcurl4-openssl-dev',
  26. 'pkg-config',
  27. 'libsslcommon2-dev',
  28. 'gcc',
  29. 'make',
  30. 'autoconf',
  31. 'libc-dev',
  32. 'pkg-config',
  33. ],
  34. 'bz2': 'php' + php_version + '-bz2',
  35. 'cache-lite': 'php-cache-lite',
  36. 'cgi': 'php' + php_version + '-cgi',
  37. 'cli': 'php' + php_version + '-cli',
  38. 'composer_bin': 'composer',
  39. 'console-table': 'php-console-table',
  40. 'curl': 'php' + php_version + '-curl',
  41. 'dba': 'php' + php_version + '-dba',
  42. 'dev': 'php' + php_version + '-dev',
  43. 'ext_conf_path': '/etc/php/' + php_version + '/mods-available',
  44. 'fpm': 'php' + php_version + '-fpm',
  45. 'gd': 'php' + php_version + '-gd',
  46. 'gearman': 'php-gearman',
  47. 'geoip': 'php-geoip',
  48. 'geshi': 'php-geshi',
  49. 'gettext': 'php' + php_version,
  50. 'gmp': 'php' + php_version + '-gmp',
  51. 'hhvm': 'hhvm',
  52. 'imagick': 'php-imagick',
  53. 'imap': 'php' + php_version + '-imap',
  54. 'intl': 'php' + php_version + '-intl',
  55. 'json': 'php' + php_version + '-json',
  56. 'ldap': 'php' + php_version + '-ldap',
  57. 'local_bin': '/usr/local/bin',
  58. 'auth-sasl': 'php-auth-sasl',
  59. 'mail': 'php-mail',
  60. 'mbstring': 'php' + php_version + '-mbstring',
  61. 'mcrypt': 'php' + php_version + '-mcrypt',
  62. 'memcache': 'php-memcache',
  63. 'memcached': 'php-memcached',
  64. 'mongo': 'php-mongo',
  65. 'mongodb': 'php-mongodb',
  66. 'mysql': 'php' + php_version + '-mysql',
  67. 'mysqlnd': 'php' + php_version + '-mysql',
  68. 'net-smtp': 'php-net-smtp',
  69. 'net4': 'php-net-ipv4',
  70. 'net6': 'php-net-ipv6',
  71. 'oauth': 'php-oauth',
  72. 'odbc': 'php-odbc',
  73. 'opcache': 'php' + php_version + '-opcache',
  74. 'pear': 'php-pear',
  75. 'pgsql': 'php' + php_version + '-pgsql',
  76. 'php': 'php' + php_version,
  77. 'phpenmod_command': 'phpenmod -v' + php_version,
  78. 'pspell': 'php' + php_version + '-pspell',
  79. 'readline': 'php' + php_version + '-readline',
  80. 'redis': 'php-redis',
  81. 'seclib': ['php-phpseclib', 'php-seclib'],
  82. 'snmp': 'php' + php_version + '-snmp',
  83. 'soap': 'php' + php_version + '-soap',
  84. 'ssh2': 'php-ssh2',
  85. 'sqlite': 'php' + php_version + '-sqlite3',
  86. 'suhosin5_ext': 'suhosin.so',
  87. 'suhosin5_repo': 'https://github.com/sektioneins/suhosin',
  88. 'suhosin7_ext': 'suhosin7.so',
  89. 'suhosin7_repo': 'https://github.com/sektioneins/suhosin7',
  90. 'sybase': 'php' + php_version + '-sybase',
  91. 'tcpdf': 'php-tcpdf',
  92. 'temp_dir': '/tmp',
  93. 'tidy': 'php' + php_version + '-tidy',
  94. 'xdebug': 'php-xdebug',
  95. 'xml': ['php' + php_version + '-xml', 'php' + php_version + '-xmlrpc'],
  96. 'xsl': 'php' + php_version + '-xsl',
  97. 'zip': 'php' + php_version + '-zip',
  98. },
  99. 'fpm': {
  100. 'conf': '/etc/php/' + php_version + '/fpm/php-fpm.conf',
  101. 'ini': '/etc/php/' + php_version + '/fpm/php.ini',
  102. 'pools': '/etc/php/' + php_version + '/fpm/pool.d',
  103. 'service': 'php' + php_version + '-fpm',
  104. 'user': 'root',
  105. 'group': 'root',
  106. 'defaults': odict([
  107. ('global', odict([
  108. ('pid', '/var/run/php' + php_version + '-fpm.pid'),
  109. ('error_log', '/var/log/php' + php_version + '-fpm.log'),
  110. ])),
  111. ('include', '/etc/php/' + php_version + '/fpm/pool.d/*.conf'),
  112. ]),
  113. },
  114. 'hhvm': {
  115. 'conf': '/etc/hhvm/server.ini',
  116. 'ini': '/etc/hhvm/php.ini',
  117. 'service': 'hhvm',
  118. 'defaults': {},
  119. 'server': odict([
  120. ('pid', '/var/run/hhvm/pid'),
  121. ('hhvm.server.port', '9000'),
  122. ('hhvm.server.type', 'fastcgi'),
  123. ('hhvm.server.default_document', 'index.php'),
  124. ('hhvm.log.use_log_file', 'true'),
  125. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  126. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  127. ]),
  128. 'php': odict([
  129. ('session.save_handler', 'files'),
  130. ('session.save_path', '/var/lib/hhvm/sessions'),
  131. ('session.gc_maxlifetime', '1440'),
  132. ('hhvm.log.level', 'Warning'),
  133. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  134. ('hhvm.log.runtime_error_reporting_level', '8191'),
  135. ('hhvm.mysql.typed_results', 'false'),
  136. ]),
  137. },
  138. 'cli': {
  139. 'ini': '/etc/php/' + php_version + '/cli/php.ini',
  140. },
  141. 'apache2': {
  142. 'ini': '/etc/php/' + php_version + '/apache2/php.ini',
  143. },
  144. },
  145. }),
  146. 'fpm': {
  147. 'service': {
  148. 'enabled': True,
  149. 'opts': {},
  150. },
  151. 'config': {
  152. 'ini': {
  153. 'opts': {},
  154. 'settings': {},
  155. },
  156. 'conf': {
  157. 'opts': {},
  158. 'settings': {},
  159. },
  160. },
  161. 'pools': {},
  162. },
  163. 'hhvm': {
  164. 'service': {
  165. 'enabled': True,
  166. 'opts': {},
  167. },
  168. 'config': {
  169. 'server': {
  170. 'opts': {},
  171. 'settings': {},
  172. },
  173. 'php': {
  174. 'opts': {},
  175. 'settings': {},
  176. },
  177. },
  178. },
  179. 'cli': {
  180. 'ini': {
  181. 'opts': {},
  182. 'settings': {},
  183. }
  184. },
  185. 'apache2': {
  186. 'ini': {
  187. 'opts': {},
  188. 'settings': {},
  189. }
  190. },
  191. 'ini': {
  192. 'defaults': {
  193. 'PHP': {
  194. 'allow_url_fopen': 'On',
  195. 'allow_url_include': 'Off',
  196. 'asp_tags': 'Off',
  197. 'auto_globals_jit': 'On',
  198. 'default_mimetype': '"text/html"',
  199. 'default_socket_timeout': 60,
  200. 'disable_functions': [
  201. 'pcntl_alarm',
  202. 'pcntl_fork',
  203. 'pcntl_waitpid',
  204. 'pcntl_wait',
  205. 'pcntl_wifexited',
  206. 'pcntl_wifstopped',
  207. 'pcntl_wifsignaled',
  208. 'pcntl_wexitstatus',
  209. 'pcntl_wtermsig',
  210. 'pcntl_wstopsig',
  211. 'pcntl_signal',
  212. 'pcntl_signal_dispatch',
  213. 'pcntl_get_last_error',
  214. 'pcntl_strerror',
  215. 'pcntl_sigprocmask',
  216. 'pcntl_sigwaitinfo',
  217. 'pcntl_sigtimedwait',
  218. 'pcntl_exec',
  219. 'pcntl_getpriority',
  220. 'pcntl_setpriority',
  221. ],
  222. 'display_errors': 'Off',
  223. 'display_startup_errors': 'Off',
  224. 'enable_dl': 'Off',
  225. 'engine': 'On',
  226. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  227. 'expose_php': 'On',
  228. 'file_uploads': 'On',
  229. 'html_errors': 'On',
  230. 'ignore_repeated_errors': 'Off',
  231. 'ignore_repeated_source': 'Off',
  232. 'implicit_flush': 'Off',
  233. 'log_errors': 'On',
  234. 'log_errors_max_len': 1024,
  235. 'max_execution_time': 30,
  236. 'max_file_uploads': 20,
  237. 'max_input_nesting_level': 64,
  238. 'max_input_time': 60,
  239. 'max_input_vars': 1000,
  240. 'memory_limit': '128M',
  241. 'output_buffering': 4096,
  242. 'post_max_size': '8M',
  243. 'precision': 14,
  244. 'register_argc_argv': 'Off',
  245. 'report_memleaks': 'On',
  246. 'request_order': 'GP',
  247. 'serialize_precision': 17,
  248. 'short_open_tag': 'Off',
  249. 'track_errors': 'Off',
  250. 'upload_max_filesize': '2M',
  251. 'variables_order': 'GPCS',
  252. 'zend.enable_gc': 'On',
  253. 'zlib.output_compression': 'Off',
  254. },
  255. 'CLI Server': {
  256. 'cli_server.color': 'On'
  257. },
  258. 'Date': {
  259. 'date.timezone': 'America/New_York'
  260. },
  261. 'Pdo_mysql': {
  262. 'pdo_mysql.cache_size': 2000
  263. },
  264. 'mail function': {
  265. 'SMTP': 'localhost',
  266. 'mail.add_x_header': 'On'
  267. },
  268. 'SQL': {
  269. 'sql.safe_mode': 'Off'
  270. },
  271. 'ODBC': {
  272. 'odbc.allow_persistent': 'On',
  273. 'odbc.check_persistent': 'On',
  274. 'odbc.max_persistent': '-1',
  275. 'odbc.max_links': '-1',
  276. 'odbc.defaultlrl': 4096,
  277. 'odbc.defaultbinmode': 1
  278. },
  279. 'Interbase': {
  280. 'ibase.allow_persistent': 1,
  281. 'ibase.max_persistent': -1,
  282. 'ibase.max_links': -1,
  283. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  284. 'ibase.dateformat': '"%Y-%m-%d"',
  285. 'ibase.timeformat': '"%H:%M:%S"'
  286. },
  287. 'MySQL': {
  288. 'mysql.allow_local_infile': 'On',
  289. 'mysql.allow_persistent': 'On',
  290. 'mysql.cache_size': '2000',
  291. 'mysql.max_persistent': -1,
  292. 'mysql.max_links': -1,
  293. 'mysql.connect_timeout': 60,
  294. 'mysql.trace_mode': 'Off'
  295. },
  296. 'MySQLi': {
  297. 'mysqli.max_persistent': -1,
  298. 'mysqli.allow_persistent': 'On',
  299. 'mysqli.max_links': -1,
  300. 'mysqli.cache_size': 2000,
  301. 'mysqli.default_port': 3306,
  302. 'mysqli.reconnect': 'Off'
  303. },
  304. 'mysqlnd': {
  305. 'mysqlnd.collect_statistics': 'On',
  306. 'mysqlnd.collect_memory_statistics': 'Off'
  307. },
  308. 'PostgreSQL': {
  309. 'pgsql.allow_persistent': 'On',
  310. 'pgsql.auto_reset_persistent': 'Off',
  311. 'pgsql.max_persistent': -1,
  312. 'pgsql.max_links': -1,
  313. 'pgsql.ignore_notice': 0,
  314. 'pgsql.log_notice': 0
  315. },
  316. 'Sybase-CT': {
  317. 'sybct.allow_persistent': 'On',
  318. 'sybct.max_persistent': -1,
  319. 'sybct.max_links': -1,
  320. 'sybct.min_server_severity': 10,
  321. 'sybct.min_client_severity': 10
  322. },
  323. 'bcmath': {
  324. 'bcmath.scale': 0
  325. },
  326. 'Session': {
  327. 'session.save_handler': 'files',
  328. 'session.use_strict_mode': 0,
  329. 'session.use_cookies': 1,
  330. 'session.use_only_cookies': 1,
  331. 'session.name': 'PHPSESSID',
  332. 'session.auto_start': 0,
  333. 'session.cookie_lifetime': 0,
  334. 'session.cookie_path': '/',
  335. 'session.serialize_handler': 'php',
  336. 'session.gc_probability': 0,
  337. 'session.gc_divisor': 1000,
  338. 'session.gc_maxlifetime': 1440,
  339. 'session.bug_compat_42': 'Off',
  340. 'session.bug_compat_warn': 'Off',
  341. 'session.cache_limiter': 'nocache',
  342. 'session.cache_expire': '180',
  343. 'session.use_trans_sid': 0,
  344. 'session.hash_function': 0,
  345. 'session.hash_bits_per_character': 5,
  346. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  347. },
  348. 'MSSQL': {
  349. 'mssql.allow_persistent': 'On',
  350. 'mssql.max_persistent': -1,
  351. 'mssql.max_links': -1,
  352. 'mssql.min_error_severity': 10,
  353. 'mssql.min_message_severity': 10,
  354. 'mssql.compatibility_mode': 'Off',
  355. 'mssql.secure_connection': 'Off'
  356. },
  357. 'Tidy': {
  358. 'tidy.clean_output': 'Off'
  359. },
  360. 'soap': {
  361. 'soap.wsdl_cache_enabled': 1,
  362. 'soap.wsdl_cache_dir': '"/tmp"',
  363. 'soap.wsdl_cache_ttl': 86400,
  364. 'soap.wsdl_cache_limit': 5
  365. },
  366. 'ldap': {
  367. 'ldap.max_links': -1
  368. },
  369. },
  370. },
  371. }, merge=True) %}
  372. {%- else %}
  373. {%- set php = salt['pillar.get']('php', {
  374. 'lookup': salt['grains.filter_by']({
  375. 'Debian': {
  376. 'pkgs': {
  377. 'adodb': 'libphp-adodb',
  378. 'apache2': 'libapache2-mod-php' + php_version,
  379. 'apc': 'php-apcu',
  380. 'apcu': 'php-apcu-bc',
  381. 'bcmath': 'php' + php_version + '-bcmath',
  382. 'bz2': 'php' + php_version + '-bz2',
  383. 'build_pkgs': ['libssl-dev', 'libcurl4-openssl-dev', 'gcc', 'make', 'autoconf', 'libc-dev', 'pkg-config'],
  384. 'cache-lite': 'php-cache-lite',
  385. 'cgi': 'php' + php_version + '-cgi',
  386. 'cli': 'php' + php_version + '-cli',
  387. 'composer_bin': 'composer',
  388. 'console-table': 'php-console-table',
  389. 'curl': 'php' + php_version + '-curl',
  390. 'dba': 'php' + php_version + '-dba',
  391. 'dev': 'php' + php_version + '-dev',
  392. 'ext_conf_path': '/etc/php/' + php_version + '/mods-available',
  393. 'fpm': 'php' + php_version + '-fpm',
  394. 'gd': 'php' + php_version + '-gd',
  395. 'gearman': 'php-gearman',
  396. 'geoip': 'php-geoip',
  397. 'geshi': 'php-geshi',
  398. 'gettext': 'php' + php_version,
  399. 'gmp': 'php' + php_version + '-gmp',
  400. 'hhvm': 'hhvm',
  401. 'imagick': 'php-imagick',
  402. 'imap': 'php' + php_version + '-imap',
  403. 'intl': 'php' + php_version + '-intl',
  404. 'json': 'php' + php_version + '-json',
  405. 'ldap': 'php' + php_version + '-ldap',
  406. 'local_bin': '/usr/local/bin',
  407. 'auth-sasl': 'php-auth-sasl',
  408. 'mail': 'php-mail',
  409. 'mbstring': 'php' + php_version + '-mbstring',
  410. 'mcrypt': 'php' + php_version + '-mcrypt',
  411. 'memcache': 'php-memcache',
  412. 'memcached': 'php-memcached',
  413. 'mongo': 'php-mongo',
  414. 'mongodb': 'php-mongodb',
  415. 'mysql': 'php' + php_version + '-mysql',
  416. 'mysqlnd': 'php' + php_version + '-mysql',
  417. 'net-smtp': 'php-net-smtp',
  418. 'net4': 'php-net-ipv4',
  419. 'net6': 'php-net-ipv6',
  420. 'oauth': 'php-oauth',
  421. 'opcache': 'php' + php_version + '-opcache',
  422. 'pear': 'php-pear',
  423. 'pgsql': 'php' + php_version + '-pgsql',
  424. 'php': 'php' + php_version,
  425. 'phpenmod_command': 'phpenmod -v' + php_version,
  426. 'pspell': 'php' + php_version + '-pspell',
  427. 'readline': 'php' + php_version + '-readline',
  428. 'redis': 'php' + php_version + '-redis',
  429. 'seclib': 'php-seclib',
  430. 'snmp': 'php' + php_version + '-snmp',
  431. 'soap': 'php' + php_version + '-soap',
  432. 'ssh2': 'php-ssh2',
  433. 'sqlite': 'php' + php_version + '-sqlite3',
  434. 'suhosin5_ext': 'suhosin.so',
  435. 'suhosin5_repo': 'https://github.com/sektioneins/suhosin',
  436. 'suhosin7_ext': 'suhosin7.so',
  437. 'suhosin7_repo': 'https://github.com/sektioneins/suhosin7',
  438. 'sybase': 'php' + php_version + '-sybase',
  439. 'tcpdf': 'php-tcpdf',
  440. 'temp_dir': '/tmp',
  441. 'tidy': 'php' + php_version + '-tidy',
  442. 'xdebug': 'php' + php_version + '-xdebug',
  443. 'xml': ['php' + php_version + '-xml', 'php' + php_version + '-xmlrpc'],
  444. 'xsl': 'php' + php_version + '-xsl',
  445. 'zip': 'php' + php_version + '-zip',
  446. },
  447. 'fpm': {
  448. 'conf': '/etc/php/' + php_version + '/fpm/php-fpm.conf',
  449. 'ini': '/etc/php/' + php_version + '/fpm/php.ini',
  450. 'pools': '/etc/php/' + php_version + '/fpm/pool.d',
  451. 'service': 'php' + php_version + '-fpm',
  452. 'user': 'root',
  453. 'group': 'root',
  454. 'defaults': odict([
  455. ('global', odict([
  456. ('pid', '/var/run/php' + php_version + '-fpm.pid'),
  457. ('error_log', '/var/log/php' + php_version + '-fpm.log'),
  458. ])),
  459. ('include', '/etc/php/' + php_version + '/fpm/pool.d/*.conf'),
  460. ]),
  461. },
  462. 'hhvm': {
  463. 'conf': '/etc/hhvm/server.ini',
  464. 'ini': '/etc/hhvm/php.ini',
  465. 'service': 'hhvm',
  466. 'defaults': {},
  467. 'server': odict([
  468. ('pid', '/var/run/hhvm/pid'),
  469. ('hhvm.server.port', '9000'),
  470. ('hhvm.server.type', 'fastcgi'),
  471. ('hhvm.server.default_document', 'index.php'),
  472. ('hhvm.log.use_log_file', 'true'),
  473. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  474. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  475. ]),
  476. 'php': odict([
  477. ('session.save_handler', 'files'),
  478. ('session.save_path', '/var/lib/hhvm/sessions'),
  479. ('session.gc_maxlifetime', '1440'),
  480. ('hhvm.log.level', 'Warning'),
  481. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  482. ('hhvm.log.runtime_error_reporting_level', '8191'),
  483. ('hhvm.mysql.typed_results', 'false'),
  484. ]),
  485. },
  486. 'cli': {
  487. 'ini': '/etc/php/' + php_version + '/cli/php.ini',
  488. },
  489. 'apache2': {
  490. 'ini': '/etc/php/' + php_version + '/apache2/php.ini',
  491. },
  492. },
  493. }),
  494. 'fpm': {
  495. 'service': {
  496. 'enabled': True,
  497. 'opts': {},
  498. },
  499. 'config': {
  500. 'ini': {
  501. 'opts': {},
  502. 'settings': {},
  503. },
  504. 'conf': {
  505. 'opts': {},
  506. 'settings': {},
  507. },
  508. },
  509. 'pools': {},
  510. },
  511. 'hhvm': {
  512. 'service': {
  513. 'enabled': True,
  514. 'opts': {},
  515. },
  516. 'config': {
  517. 'server': {
  518. 'opts': {},
  519. 'settings': {},
  520. },
  521. 'php': {
  522. 'opts': {},
  523. 'settings': {},
  524. },
  525. },
  526. },
  527. 'cli': {
  528. 'ini': {
  529. 'opts': {},
  530. 'settings': {},
  531. }
  532. },
  533. 'apache2': {
  534. 'ini': {
  535. 'opts': {},
  536. 'settings': {},
  537. }
  538. },
  539. 'ini': {
  540. 'defaults': {
  541. 'PHP': {
  542. 'allow_url_fopen': 'On',
  543. 'allow_url_include': 'Off',
  544. 'asp_tags': 'Off',
  545. 'auto_globals_jit': 'On',
  546. 'default_mimetype': '"text/html"',
  547. 'default_socket_timeout': 60,
  548. 'disable_functions': [
  549. 'pcntl_alarm',
  550. 'pcntl_fork',
  551. 'pcntl_waitpid',
  552. 'pcntl_wait',
  553. 'pcntl_wifexited',
  554. 'pcntl_wifstopped',
  555. 'pcntl_wifsignaled',
  556. 'pcntl_wexitstatus',
  557. 'pcntl_wtermsig',
  558. 'pcntl_wstopsig',
  559. 'pcntl_signal',
  560. 'pcntl_signal_dispatch',
  561. 'pcntl_get_last_error',
  562. 'pcntl_strerror',
  563. 'pcntl_sigprocmask',
  564. 'pcntl_sigwaitinfo',
  565. 'pcntl_sigtimedwait',
  566. 'pcntl_exec',
  567. 'pcntl_getpriority',
  568. 'pcntl_setpriority',
  569. ],
  570. 'display_errors': 'Off',
  571. 'display_startup_errors': 'Off',
  572. 'enable_dl': 'Off',
  573. 'engine': 'On',
  574. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  575. 'expose_php': 'On',
  576. 'file_uploads': 'On',
  577. 'html_errors': 'On',
  578. 'ignore_repeated_errors': 'Off',
  579. 'ignore_repeated_source': 'Off',
  580. 'implicit_flush': 'Off',
  581. 'log_errors': 'On',
  582. 'log_errors_max_len': 1024,
  583. 'max_execution_time': 30,
  584. 'max_file_uploads': 20,
  585. 'max_input_nesting_level': 64,
  586. 'max_input_time': 60,
  587. 'max_input_vars': 1000,
  588. 'memory_limit': '128M',
  589. 'output_buffering': 4096,
  590. 'post_max_size': '8M',
  591. 'precision': 14,
  592. 'register_argc_argv': 'Off',
  593. 'report_memleaks': 'On',
  594. 'request_order': 'GP',
  595. 'serialize_precision': 17,
  596. 'short_open_tag': 'Off',
  597. 'track_errors': 'Off',
  598. 'upload_max_filesize': '2M',
  599. 'variables_order': 'GPCS',
  600. 'zend.enable_gc': 'On',
  601. 'zlib.output_compression': 'Off',
  602. },
  603. 'CLI Server': {
  604. 'cli_server.color': 'On'
  605. },
  606. 'Date': {
  607. 'date.timezone': 'America/New_York'
  608. },
  609. 'Pdo_mysql': {
  610. 'pdo_mysql.cache_size': 2000
  611. },
  612. 'mail function': {
  613. 'SMTP': 'localhost',
  614. 'mail.add_x_header': 'On'
  615. },
  616. 'SQL': {
  617. 'sql.safe_mode': 'Off'
  618. },
  619. 'ODBC': {
  620. 'odbc.allow_persistent': 'On',
  621. 'odbc.check_persistent': 'On',
  622. 'odbc.max_persistent': '-1',
  623. 'odbc.max_links': '-1',
  624. 'odbc.defaultlrl': 4096,
  625. 'odbc.defaultbinmode': 1
  626. },
  627. 'Interbase': {
  628. 'ibase.allow_persistent': 1,
  629. 'ibase.max_persistent': -1,
  630. 'ibase.max_links': -1,
  631. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  632. 'ibase.dateformat': '"%Y-%m-%d"',
  633. 'ibase.timeformat': '"%H:%M:%S"'
  634. },
  635. 'MySQL': {
  636. 'mysql.allow_local_infile': 'On',
  637. 'mysql.allow_persistent': 'On',
  638. 'mysql.cache_size': '2000',
  639. 'mysql.max_persistent': -1,
  640. 'mysql.max_links': -1,
  641. 'mysql.connect_timeout': 60,
  642. 'mysql.trace_mode': 'Off'
  643. },
  644. 'MySQLi': {
  645. 'mysqli.max_persistent': -1,
  646. 'mysqli.allow_persistent': 'On',
  647. 'mysqli.max_links': -1,
  648. 'mysqli.cache_size': 2000,
  649. 'mysqli.default_port': 3306,
  650. 'mysqli.reconnect': 'Off'
  651. },
  652. 'mysqlnd': {
  653. 'mysqlnd.collect_statistics': 'On',
  654. 'mysqlnd.collect_memory_statistics': 'Off'
  655. },
  656. 'PostgreSQL': {
  657. 'pgsql.allow_persistent': 'On',
  658. 'pgsql.auto_reset_persistent': 'Off',
  659. 'pgsql.max_persistent': -1,
  660. 'pgsql.max_links': -1,
  661. 'pgsql.ignore_notice': 0,
  662. 'pgsql.log_notice': 0
  663. },
  664. 'Sybase-CT': {
  665. 'sybct.allow_persistent': 'On',
  666. 'sybct.max_persistent': -1,
  667. 'sybct.max_links': -1,
  668. 'sybct.min_server_severity': 10,
  669. 'sybct.min_client_severity': 10
  670. },
  671. 'bcmath': {
  672. 'bcmath.scale': 0
  673. },
  674. 'Session': {
  675. 'session.save_handler': 'files',
  676. 'session.use_strict_mode': 0,
  677. 'session.use_cookies': 1,
  678. 'session.use_only_cookies': 1,
  679. 'session.name': 'PHPSESSID',
  680. 'session.auto_start': 0,
  681. 'session.cookie_lifetime': 0,
  682. 'session.cookie_path': '/',
  683. 'session.serialize_handler': 'php',
  684. 'session.gc_probability': 0,
  685. 'session.gc_divisor': 1000,
  686. 'session.gc_maxlifetime': 1440,
  687. 'session.bug_compat_42': 'Off',
  688. 'session.bug_compat_warn': 'Off',
  689. 'session.cache_limiter': 'nocache',
  690. 'session.cache_expire': '180',
  691. 'session.use_trans_sid': 0,
  692. 'session.hash_function': 0,
  693. 'session.hash_bits_per_character': 5,
  694. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  695. },
  696. 'MSSQL': {
  697. 'mssql.allow_persistent': 'On',
  698. 'mssql.max_persistent': -1,
  699. 'mssql.max_links': -1,
  700. 'mssql.min_error_severity': 10,
  701. 'mssql.min_message_severity': 10,
  702. 'mssql.compatibility_mode': 'Off',
  703. 'mssql.secure_connection': 'Off'
  704. },
  705. 'Tidy': {
  706. 'tidy.clean_output': 'Off'
  707. },
  708. 'soap': {
  709. 'soap.wsdl_cache_enabled': 1,
  710. 'soap.wsdl_cache_dir': '"/tmp"',
  711. 'soap.wsdl_cache_ttl': 86400,
  712. 'soap.wsdl_cache_limit': 5
  713. },
  714. 'ldap': {
  715. 'ldap.max_links': -1
  716. },
  717. },
  718. },
  719. }, merge=True) %}
  720. {%- endif %}
  721. {%- else %}
  722. {%- if salt['grains.get']('osrelease')|string >= '18.04' %}
  723. {%- set php = salt['pillar.get']('php', {
  724. 'lookup': salt['grains.filter_by']({
  725. 'Ubuntu': {
  726. 'pkgs': {
  727. 'adodb': 'libphp-adodb',
  728. 'apache2': 'libapache2-mod-php',
  729. 'apc': 'php',
  730. 'apcu': 'php-apcu',
  731. 'bcmath': 'php7.2-bcmath',
  732. 'bz2': 'php7.2-bz2',
  733. 'cache-lite': 'php-cache-lite',
  734. 'cgi': 'php-cgi',
  735. 'cli': 'php-cli',
  736. 'console-table': 'php-console-table',
  737. 'composer_bin': 'composer',
  738. 'curl': 'php-curl',
  739. 'dev': 'php7.2-dev',
  740. 'dba': 'php7.2-dba',
  741. 'fpm': 'php-fpm',
  742. 'gd': 'php-gd',
  743. 'geoip': 'php-geoip',
  744. 'geshi': 'php-geshi',
  745. 'gmp': 'php-gmp',
  746. 'hhvm': 'hhvm',
  747. 'imagick': 'php-imagick',
  748. 'imap': 'php-imap',
  749. 'intl': 'php-intl',
  750. 'json': 'php-json',
  751. 'ldap': 'php-ldap',
  752. 'local_bin': '/usr/local/bin',
  753. 'auth-sasl': 'php-auth-sasl',
  754. 'mail': 'php-mail',
  755. 'mbstring': 'php-mbstring',
  756. 'mcrypt': 'php-mcrypt',
  757. 'memcache': 'php-memcache',
  758. 'memcached': 'php-memcached',
  759. 'mongodb': 'php-mongodb',
  760. 'mysql': 'php-mysql',
  761. 'mysqlnd': 'php',
  762. 'net-smtp': 'php-net-smtp',
  763. 'net4': 'php-net-ipv4',
  764. 'net6': 'php-net-ipv6',
  765. 'oauth': 'php-oauth',
  766. 'odbc': 'php-odbc',
  767. 'opcache': 'php7.2-opcache',
  768. 'pear': 'php-pear',
  769. 'pgsql': 'php-pgsql',
  770. 'php': 'php',
  771. 'phpenmod_command': 'phpenmod',
  772. 'pspell': 'php-pspell',
  773. 'redis': 'php-redis',
  774. 'seclib': ['php-phpseclib', 'php-seclib'],
  775. 'snmp': 'php-snmp',
  776. 'soap': 'php-soap',
  777. 'sqlite': 'php-sqlite3',
  778. 'ssh2': 'php-ssh2',
  779. 'suhosin': 'php',
  780. 'sybase': 'php-sybase',
  781. 'tcpdf': 'php-tcpdf',
  782. 'temp_dir': '/tmp',
  783. 'tidy': 'php7.2-tidy',
  784. 'xcache': 'php',
  785. 'xdebug': 'php-xdebug',
  786. 'xml': ['php-xml', 'php-xmlrpc'],
  787. 'xsl': 'php7.2-xsl',
  788. 'zip': 'php-zip',
  789. },
  790. 'fpm': {
  791. 'conf': '/etc/php/7.2/fpm/php-fpm.conf',
  792. 'ini': '/etc/php/7.2/fpm/php.ini',
  793. 'pools': '/etc/php/7.2/fpm/pool.d',
  794. 'service': 'php7.2-fpm',
  795. 'user': 'root',
  796. 'group': 'root',
  797. 'defaults': odict([
  798. ('global', odict([
  799. ('pid', '/var/run/php7.2-fpm.pid'),
  800. ('error_log', '/var/log/php7.2-fpm.log'),
  801. ])),
  802. ('include', '/etc/php/7.2/fpm/pool.d/*.conf'),
  803. ]),
  804. },
  805. 'hhvm': {
  806. 'conf': '/etc/hhvm/server.ini',
  807. 'ini': '/etc/hhvm/php.ini',
  808. 'service': 'hhvm',
  809. 'defaults': {},
  810. 'server': odict([
  811. ('pid', '/var/run/hhvm/pid'),
  812. ('hhvm.server.port', '9000'),
  813. ('hhvm.server.type', 'fastcgi'),
  814. ('hhvm.server.default_document', 'index.php'),
  815. ('hhvm.log.use_log_file', 'true'),
  816. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  817. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  818. ]),
  819. 'php': odict([
  820. ('session.save_handler', 'files'),
  821. ('session.save_path', '/var/lib/hhvm/sessions'),
  822. ('session.gc_maxlifetime', '1440'),
  823. ('hhvm.log.level', 'Warning'),
  824. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  825. ('hhvm.log.runtime_error_reporting_level', '8191'),
  826. ('hhvm.mysql.typed_results', 'false'),
  827. ]),
  828. },
  829. 'cli': {
  830. 'ini': '/etc/php/7.2/cli/php.ini',
  831. },
  832. 'apache2': {
  833. 'ini': '/etc/php/7.2/apache2/php.ini',
  834. },
  835. 'xcache': {
  836. 'ini': '/etc/php/7.2/mods-available/xcache.ini',
  837. 'defaults': {},
  838. },
  839. },
  840. }, grain="os"),
  841. 'fpm': {
  842. 'service': {
  843. 'enabled': True,
  844. 'opts': {},
  845. },
  846. 'config': {
  847. 'ini': {
  848. 'opts': {},
  849. 'settings': {},
  850. },
  851. 'conf': {
  852. 'opts': {},
  853. 'settings': {},
  854. },
  855. },
  856. 'pools': {
  857. 'default.conf': {
  858. 'enabled': False,
  859. 'opts': {},
  860. },
  861. },
  862. },
  863. 'hhvm': {
  864. 'service': {
  865. 'enabled': True,
  866. 'opts': {},
  867. },
  868. 'config': {
  869. 'server': {
  870. 'opts': {},
  871. 'settings': {},
  872. },
  873. 'php': {
  874. 'opts': {},
  875. 'settings': {},
  876. },
  877. },
  878. },
  879. 'cli': {
  880. 'ini': {
  881. 'opts': {},
  882. 'settings': {},
  883. }
  884. },
  885. 'apache2': {
  886. 'ini': {
  887. 'opts': {},
  888. 'settings': {},
  889. }
  890. },
  891. 'xcache': {
  892. 'ini': {
  893. 'defaults': {
  894. 'xcache-common': {
  895. 'extension': 'xcache.so',
  896. },
  897. 'xcache.admin': {
  898. 'xcache.admin.enable_auth': 'On',
  899. },
  900. 'xcache': {
  901. 'xcache.shm_scheme': '"mmap"',
  902. 'xcache.size': '60M',
  903. 'xcache.count': '1',
  904. 'xcache.slots': '8K',
  905. 'xcache.ttl': '0',
  906. 'xcache.gc_interval': '0',
  907. 'xcache.var_size': '4M',
  908. 'xcache.var_count': '1',
  909. 'xcache.var_slots': '8K',
  910. 'xcache.var_ttl': '0',
  911. 'xcache.var_maxttl': '0',
  912. 'xcache.var_gc_interval': '300',
  913. 'xcache.var_namespace_mode': '0',
  914. 'xcache.var_namespace': '""',
  915. 'xcache.readonly_protection': 'Off',
  916. 'xcache.mmap_path': '"/dev/zero"',
  917. 'xcache.coredump_directory': '""',
  918. 'xcache.coredump_type': '0',
  919. 'xcache.disable_on_crash': 'Off',
  920. 'xcache.experimental': 'Off',
  921. 'xcache.cacher': 'On',
  922. 'xcache.stat': 'On',
  923. 'xcache.optimizer': 'Off',
  924. },
  925. 'xcache.coverager': {
  926. 'xcache.coverager': 'Off',
  927. 'xcache.coverager_autostart': 'On',
  928. 'xcache.coveragedump_directory': '""',
  929. },
  930. },
  931. 'opts': {},
  932. 'settings': {},
  933. }
  934. },
  935. 'ini': {
  936. 'defaults': {
  937. 'PHP': {
  938. 'allow_url_fopen': 'On',
  939. 'allow_url_include': 'Off',
  940. 'asp_tags': 'Off',
  941. 'auto_globals_jit': 'On',
  942. 'default_mimetype': '"text/html"',
  943. 'default_socket_timeout': 60,
  944. 'disable_functions': [
  945. 'pcntl_alarm',
  946. 'pcntl_fork',
  947. 'pcntl_waitpid',
  948. 'pcntl_wait',
  949. 'pcntl_wifexited',
  950. 'pcntl_wifstopped',
  951. 'pcntl_wifsignaled',
  952. 'pcntl_wexitstatus',
  953. 'pcntl_wtermsig',
  954. 'pcntl_wstopsig',
  955. 'pcntl_signal',
  956. 'pcntl_signal_dispatch',
  957. 'pcntl_get_last_error',
  958. 'pcntl_strerror',
  959. 'pcntl_sigprocmask',
  960. 'pcntl_sigwaitinfo',
  961. 'pcntl_sigtimedwait',
  962. 'pcntl_exec',
  963. 'pcntl_getpriority',
  964. 'pcntl_setpriority',
  965. ],
  966. 'display_errors': 'Off',
  967. 'display_startup_errors': 'Off',
  968. 'enable_dl': 'Off',
  969. 'engine': 'On',
  970. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  971. 'expose_php': 'On',
  972. 'file_uploads': 'On',
  973. 'html_errors': 'On',
  974. 'ignore_repeated_errors': 'Off',
  975. 'ignore_repeated_source': 'Off',
  976. 'implicit_flush': 'Off',
  977. 'log_errors': 'On',
  978. 'log_errors_max_len': 1024,
  979. 'max_execution_time': 30,
  980. 'max_file_uploads': 20,
  981. 'max_input_nesting_level': 64,
  982. 'max_input_time': 60,
  983. 'max_input_vars': 1000,
  984. 'memory_limit': '128M',
  985. 'output_buffering': 4096,
  986. 'post_max_size': '8M',
  987. 'precision': 14,
  988. 'register_argc_argv': 'Off',
  989. 'report_memleaks': 'On',
  990. 'request_order': 'GP',
  991. 'serialize_precision': 17,
  992. 'short_open_tag': 'Off',
  993. 'track_errors': 'Off',
  994. 'upload_max_filesize': '2M',
  995. 'variables_order': 'GPCS',
  996. 'zend.enable_gc': 'On',
  997. 'zlib.output_compression': 'Off',
  998. },
  999. 'CLI Server': {
  1000. 'cli_server.color': 'On'
  1001. },
  1002. 'Date': {
  1003. 'date.timezone': 'America/New_York'
  1004. },
  1005. 'Pdo_mysql': {
  1006. 'pdo_mysql.cache_size': 2000
  1007. },
  1008. 'mail function': {
  1009. 'SMTP': 'localhost',
  1010. 'mail.add_x_header': 'On'
  1011. },
  1012. 'SQL': {
  1013. 'sql.safe_mode': 'Off'
  1014. },
  1015. 'ODBC': {
  1016. 'odbc.allow_persistent': 'On',
  1017. 'odbc.check_persistent': 'On',
  1018. 'odbc.max_persistent': '-1',
  1019. 'odbc.max_links': '-1',
  1020. 'odbc.defaultlrl': 4096,
  1021. 'odbc.defaultbinmode': 1
  1022. },
  1023. 'Interbase': {
  1024. 'ibase.allow_persistent': 1,
  1025. 'ibase.max_persistent': -1,
  1026. 'ibase.max_links': -1,
  1027. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  1028. 'ibase.dateformat': '"%Y-%m-%d"',
  1029. 'ibase.timeformat': '"%H:%M:%S"'
  1030. },
  1031. 'MySQL': {
  1032. 'mysql.allow_local_infile': 'On',
  1033. 'mysql.allow_persistent': 'On',
  1034. 'mysql.cache_size': '2000',
  1035. 'mysql.max_persistent': -1,
  1036. 'mysql.max_links': -1,
  1037. 'mysql.connect_timeout': 60,
  1038. 'mysql.trace_mode': 'Off'
  1039. },
  1040. 'MySQLi': {
  1041. 'mysqli.max_persistent': -1,
  1042. 'mysqli.allow_persistent': 'On',
  1043. 'mysqli.max_links': -1,
  1044. 'mysqli.cache_size': 2000,
  1045. 'mysqli.default_port': 3306,
  1046. 'mysqli.reconnect': 'Off'
  1047. },
  1048. 'mysqlnd': {
  1049. 'mysqlnd.collect_statistics': 'On',
  1050. 'mysqlnd.collect_memory_statistics': 'Off'
  1051. },
  1052. 'PostgreSQL': {
  1053. 'pgsql.allow_persistent': 'On',
  1054. 'pgsql.auto_reset_persistent': 'Off',
  1055. 'pgsql.max_persistent': -1,
  1056. 'pgsql.max_links': -1,
  1057. 'pgsql.ignore_notice': 0,
  1058. 'pgsql.log_notice': 0
  1059. },
  1060. 'Sybase-CT': {
  1061. 'sybct.allow_persistent': 'On',
  1062. 'sybct.max_persistent': -1,
  1063. 'sybct.max_links': -1,
  1064. 'sybct.min_server_severity': 10,
  1065. 'sybct.min_client_severity': 10
  1066. },
  1067. 'bcmath': {
  1068. 'bcmath.scale': 0
  1069. },
  1070. 'Session': {
  1071. 'session.save_handler': 'files',
  1072. 'session.use_strict_mode': 0,
  1073. 'session.use_cookies': 1,
  1074. 'session.use_only_cookies': 1,
  1075. 'session.name': 'PHPSESSID',
  1076. 'session.auto_start': 0,
  1077. 'session.cookie_lifetime': 0,
  1078. 'session.cookie_path': '/',
  1079. 'session.serialize_handler': 'php',
  1080. 'session.gc_probability': 0,
  1081. 'session.gc_divisor': 1000,
  1082. 'session.gc_maxlifetime': 1440,
  1083. 'session.bug_compat_42': 'Off',
  1084. 'session.bug_compat_warn': 'Off',
  1085. 'session.cache_limiter': 'nocache',
  1086. 'session.cache_expire': '180',
  1087. 'session.use_trans_sid': 0,
  1088. 'session.hash_function': 0,
  1089. 'session.hash_bits_per_character': 5,
  1090. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  1091. },
  1092. 'MSSQL': {
  1093. 'mssql.allow_persistent': 'On',
  1094. 'mssql.max_persistent': -1,
  1095. 'mssql.max_links': -1,
  1096. 'mssql.min_error_severity': 10,
  1097. 'mssql.min_message_severity': 10,
  1098. 'mssql.compatibility_mode': 'Off',
  1099. 'mssql.secure_connection': 'Off'
  1100. },
  1101. 'Tidy': {
  1102. 'tidy.clean_output': 'Off'
  1103. },
  1104. 'soap': {
  1105. 'soap.wsdl_cache_enabled': 1,
  1106. 'soap.wsdl_cache_dir': '"/tmp"',
  1107. 'soap.wsdl_cache_ttl': 86400,
  1108. 'soap.wsdl_cache_limit': 5
  1109. },
  1110. 'ldap': {
  1111. 'ldap.max_links': -1
  1112. },
  1113. },
  1114. },
  1115. }, merge=True) %}
  1116. {%- elif salt['grains.get']('osrelease')|string >= '17.10' %}
  1117. {%- set php = salt['pillar.get']('php', {
  1118. 'lookup': salt['grains.filter_by']({
  1119. 'Ubuntu': {
  1120. 'pkgs': {
  1121. 'adodb': 'libphp-adodb',
  1122. 'apache2': 'libapache2-mod-php',
  1123. 'apc': 'php',
  1124. 'apcu': 'php-apcu',
  1125. 'bcmath': 'php7.1-bcmath',
  1126. 'bz2': 'php7.1-bz2',
  1127. 'cache-lite': 'php-cache-lite',
  1128. 'cgi': 'php-cgi',
  1129. 'cli': 'php-cli',
  1130. 'console-table': 'php-console-table',
  1131. 'composer_bin': 'composer',
  1132. 'curl': 'php-curl',
  1133. 'dba': 'php7.1-dba',
  1134. 'dev': 'php7.1-dev',
  1135. 'fpm': 'php-fpm',
  1136. 'gd': 'php-gd',
  1137. 'geoip': 'php-geoip',
  1138. 'geshi': 'php-geshi',
  1139. 'gmp': 'php-gmp',
  1140. 'hhvm': 'hhvm',
  1141. 'imagick': 'php-imagick',
  1142. 'imap': 'php-imap',
  1143. 'intl': 'php-intl',
  1144. 'json': 'php-json',
  1145. 'ldap': 'php-ldap',
  1146. 'local_bin': '/usr/local/bin',
  1147. 'auth-sasl': 'php-auth-sasl',
  1148. 'mail': 'php-mail',
  1149. 'mbstring': 'php-mbstring',
  1150. 'mcrypt': 'php-mcrypt',
  1151. 'memcache': 'php-memcache',
  1152. 'memcached': 'php-memcached',
  1153. 'mongodb': 'php-mongodb',
  1154. 'mysql': 'php-mysql',
  1155. 'mysqlnd': 'php',
  1156. 'net-smtp': 'php-net-smtp',
  1157. 'net4': 'php-net-ipv4',
  1158. 'net6': 'php-net-ipv6',
  1159. 'oauth': 'php-oauth',
  1160. 'opcache': 'php7.1-opcache',
  1161. 'pear': 'php-pear',
  1162. 'pgsql': 'php-pgsql',
  1163. 'php': 'php',
  1164. 'phpenmod_command': 'phpenmod',
  1165. 'pspell': 'php-pspell',
  1166. 'redis': 'php-redis',
  1167. 'seclib': ['php-phpseclib', 'php-seclib'],
  1168. 'snmp': 'php-snmp',
  1169. 'soap': 'php-soap',
  1170. 'sqlite': 'php-sqlite3',
  1171. 'ssh2': 'php-ssh2',
  1172. 'suhosin': 'php',
  1173. 'sybase': 'php-sybase',
  1174. 'tcpdf': 'php-tcpdf',
  1175. 'temp_dir': '/tmp',
  1176. 'tidy': 'php7.1-tidy',
  1177. 'xcache': 'php',
  1178. 'xdebug': 'php-xdebug',
  1179. 'xml': ['php-xml', 'php-xmlrpc'],
  1180. 'xsl': 'php7.1-xsl',
  1181. 'zip': 'php-zip',
  1182. },
  1183. 'fpm': {
  1184. 'conf': '/etc/php/7.1/fpm/php-fpm.conf',
  1185. 'ini': '/etc/php/7.1/fpm/php.ini',
  1186. 'pools': '/etc/php/7.1/fpm/pool.d',
  1187. 'service': 'php7.1-fpm',
  1188. 'user': 'root',
  1189. 'group': 'root',
  1190. 'defaults': odict([
  1191. ('global', odict([
  1192. ('pid', '/var/run/php7.1-fpm.pid'),
  1193. ('error_log', '/var/log/php7.1-fpm.log'),
  1194. ])),
  1195. ('include', '/etc/php/7.1/fpm/pool.d/*.conf'),
  1196. ]),
  1197. },
  1198. 'hhvm': {
  1199. 'conf': '/etc/hhvm/server.ini',
  1200. 'ini': '/etc/hhvm/php.ini',
  1201. 'service': 'hhvm',
  1202. 'defaults': {},
  1203. 'server': odict([
  1204. ('pid', '/var/run/hhvm/pid'),
  1205. ('hhvm.server.port', '9000'),
  1206. ('hhvm.server.type', 'fastcgi'),
  1207. ('hhvm.server.default_document', 'index.php'),
  1208. ('hhvm.log.use_log_file', 'true'),
  1209. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  1210. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  1211. ]),
  1212. 'php': odict([
  1213. ('session.save_handler', 'files'),
  1214. ('session.save_path', '/var/lib/hhvm/sessions'),
  1215. ('session.gc_maxlifetime', '1440'),
  1216. ('hhvm.log.level', 'Warning'),
  1217. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  1218. ('hhvm.log.runtime_error_reporting_level', '8191'),
  1219. ('hhvm.mysql.typed_results', 'false'),
  1220. ]),
  1221. },
  1222. 'cli': {
  1223. 'ini': '/etc/php/7.1/cli/php.ini',
  1224. },
  1225. 'apache2': {
  1226. 'ini': '/etc/php/7.1/apache2/php.ini',
  1227. },
  1228. 'xcache': {
  1229. 'ini': '/etc/php/7.1/mods-available/xcache.ini',
  1230. 'defaults': {},
  1231. },
  1232. },
  1233. }, grain="os"),
  1234. 'fpm': {
  1235. 'service': {
  1236. 'enabled': True,
  1237. 'opts': {},
  1238. },
  1239. 'config': {
  1240. 'ini': {
  1241. 'opts': {},
  1242. 'settings': {},
  1243. },
  1244. 'conf': {
  1245. 'opts': {},
  1246. 'settings': {},
  1247. },
  1248. },
  1249. 'pools': {
  1250. 'default.conf': {
  1251. 'enabled': False,
  1252. 'opts': {},
  1253. },
  1254. },
  1255. },
  1256. 'hhvm': {
  1257. 'service': {
  1258. 'enabled': True,
  1259. 'opts': {},
  1260. },
  1261. 'config': {
  1262. 'server': {
  1263. 'opts': {},
  1264. 'settings': {},
  1265. },
  1266. 'php': {
  1267. 'opts': {},
  1268. 'settings': {},
  1269. },
  1270. },
  1271. },
  1272. 'cli': {
  1273. 'ini': {
  1274. 'opts': {},
  1275. 'settings': {},
  1276. }
  1277. },
  1278. 'apache2': {
  1279. 'ini': {
  1280. 'opts': {},
  1281. 'settings': {},
  1282. }
  1283. },
  1284. 'xcache': {
  1285. 'ini': {
  1286. 'defaults': {
  1287. 'xcache-common': {
  1288. 'extension': 'xcache.so',
  1289. },
  1290. 'xcache.admin': {
  1291. 'xcache.admin.enable_auth': 'On',
  1292. },
  1293. 'xcache': {
  1294. 'xcache.shm_scheme': '"mmap"',
  1295. 'xcache.size': '60M',
  1296. 'xcache.count': '1',
  1297. 'xcache.slots': '8K',
  1298. 'xcache.ttl': '0',
  1299. 'xcache.gc_interval': '0',
  1300. 'xcache.var_size': '4M',
  1301. 'xcache.var_count': '1',
  1302. 'xcache.var_slots': '8K',
  1303. 'xcache.var_ttl': '0',
  1304. 'xcache.var_maxttl': '0',
  1305. 'xcache.var_gc_interval': '300',
  1306. 'xcache.var_namespace_mode': '0',
  1307. 'xcache.var_namespace': '""',
  1308. 'xcache.readonly_protection': 'Off',
  1309. 'xcache.mmap_path': '"/dev/zero"',
  1310. 'xcache.coredump_directory': '""',
  1311. 'xcache.coredump_type': '0',
  1312. 'xcache.disable_on_crash': 'Off',
  1313. 'xcache.experimental': 'Off',
  1314. 'xcache.cacher': 'On',
  1315. 'xcache.stat': 'On',
  1316. 'xcache.optimizer': 'Off',
  1317. },
  1318. 'xcache.coverager': {
  1319. 'xcache.coverager': 'Off',
  1320. 'xcache.coverager_autostart': 'On',
  1321. 'xcache.coveragedump_directory': '""',
  1322. },
  1323. },
  1324. 'opts': {},
  1325. 'settings': {},
  1326. }
  1327. },
  1328. 'ini': {
  1329. 'defaults': {
  1330. 'PHP': {
  1331. 'allow_url_fopen': 'On',
  1332. 'allow_url_include': 'Off',
  1333. 'asp_tags': 'Off',
  1334. 'auto_globals_jit': 'On',
  1335. 'default_mimetype': '"text/html"',
  1336. 'default_socket_timeout': 60,
  1337. 'disable_functions': [
  1338. 'pcntl_alarm',
  1339. 'pcntl_fork',
  1340. 'pcntl_waitpid',
  1341. 'pcntl_wait',
  1342. 'pcntl_wifexited',
  1343. 'pcntl_wifstopped',
  1344. 'pcntl_wifsignaled',
  1345. 'pcntl_wexitstatus',
  1346. 'pcntl_wtermsig',
  1347. 'pcntl_wstopsig',
  1348. 'pcntl_signal',
  1349. 'pcntl_signal_dispatch',
  1350. 'pcntl_get_last_error',
  1351. 'pcntl_strerror',
  1352. 'pcntl_sigprocmask',
  1353. 'pcntl_sigwaitinfo',
  1354. 'pcntl_sigtimedwait',
  1355. 'pcntl_exec',
  1356. 'pcntl_getpriority',
  1357. 'pcntl_setpriority',
  1358. ],
  1359. 'display_errors': 'Off',
  1360. 'display_startup_errors': 'Off',
  1361. 'enable_dl': 'Off',
  1362. 'engine': 'On',
  1363. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  1364. 'expose_php': 'On',
  1365. 'file_uploads': 'On',
  1366. 'html_errors': 'On',
  1367. 'ignore_repeated_errors': 'Off',
  1368. 'ignore_repeated_source': 'Off',
  1369. 'implicit_flush': 'Off',
  1370. 'log_errors': 'On',
  1371. 'log_errors_max_len': 1024,
  1372. 'max_execution_time': 30,
  1373. 'max_file_uploads': 20,
  1374. 'max_input_nesting_level': 64,
  1375. 'max_input_time': 60,
  1376. 'max_input_vars': 1000,
  1377. 'memory_limit': '128M',
  1378. 'output_buffering': 4096,
  1379. 'post_max_size': '8M',
  1380. 'precision': 14,
  1381. 'register_argc_argv': 'Off',
  1382. 'report_memleaks': 'On',
  1383. 'request_order': 'GP',
  1384. 'serialize_precision': 17,
  1385. 'short_open_tag': 'Off',
  1386. 'track_errors': 'Off',
  1387. 'upload_max_filesize': '2M',
  1388. 'variables_order': 'GPCS',
  1389. 'zend.enable_gc': 'On',
  1390. 'zlib.output_compression': 'Off',
  1391. },
  1392. 'CLI Server': {
  1393. 'cli_server.color': 'On'
  1394. },
  1395. 'Date': {
  1396. 'date.timezone': 'America/New_York'
  1397. },
  1398. 'Pdo_mysql': {
  1399. 'pdo_mysql.cache_size': 2000
  1400. },
  1401. 'mail function': {
  1402. 'SMTP': 'localhost',
  1403. 'mail.add_x_header': 'On'
  1404. },
  1405. 'SQL': {
  1406. 'sql.safe_mode': 'Off'
  1407. },
  1408. 'ODBC': {
  1409. 'odbc.allow_persistent': 'On',
  1410. 'odbc.check_persistent': 'On',
  1411. 'odbc.max_persistent': '-1',
  1412. 'odbc.max_links': '-1',
  1413. 'odbc.defaultlrl': 4096,
  1414. 'odbc.defaultbinmode': 1
  1415. },
  1416. 'Interbase': {
  1417. 'ibase.allow_persistent': 1,
  1418. 'ibase.max_persistent': -1,
  1419. 'ibase.max_links': -1,
  1420. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  1421. 'ibase.dateformat': '"%Y-%m-%d"',
  1422. 'ibase.timeformat': '"%H:%M:%S"'
  1423. },
  1424. 'MySQL': {
  1425. 'mysql.allow_local_infile': 'On',
  1426. 'mysql.allow_persistent': 'On',
  1427. 'mysql.cache_size': '2000',
  1428. 'mysql.max_persistent': -1,
  1429. 'mysql.max_links': -1,
  1430. 'mysql.connect_timeout': 60,
  1431. 'mysql.trace_mode': 'Off'
  1432. },
  1433. 'MySQLi': {
  1434. 'mysqli.max_persistent': -1,
  1435. 'mysqli.allow_persistent': 'On',
  1436. 'mysqli.max_links': -1,
  1437. 'mysqli.cache_size': 2000,
  1438. 'mysqli.default_port': 3306,
  1439. 'mysqli.reconnect': 'Off'
  1440. },
  1441. 'mysqlnd': {
  1442. 'mysqlnd.collect_statistics': 'On',
  1443. 'mysqlnd.collect_memory_statistics': 'Off'
  1444. },
  1445. 'PostgreSQL': {
  1446. 'pgsql.allow_persistent': 'On',
  1447. 'pgsql.auto_reset_persistent': 'Off',
  1448. 'pgsql.max_persistent': -1,
  1449. 'pgsql.max_links': -1,
  1450. 'pgsql.ignore_notice': 0,
  1451. 'pgsql.log_notice': 0
  1452. },
  1453. 'Sybase-CT': {
  1454. 'sybct.allow_persistent': 'On',
  1455. 'sybct.max_persistent': -1,
  1456. 'sybct.max_links': -1,
  1457. 'sybct.min_server_severity': 10,
  1458. 'sybct.min_client_severity': 10
  1459. },
  1460. 'bcmath': {
  1461. 'bcmath.scale': 0
  1462. },
  1463. 'Session': {
  1464. 'session.save_handler': 'files',
  1465. 'session.use_strict_mode': 0,
  1466. 'session.use_cookies': 1,
  1467. 'session.use_only_cookies': 1,
  1468. 'session.name': 'PHPSESSID',
  1469. 'session.auto_start': 0,
  1470. 'session.cookie_lifetime': 0,
  1471. 'session.cookie_path': '/',
  1472. 'session.serialize_handler': 'php',
  1473. 'session.gc_probability': 0,
  1474. 'session.gc_divisor': 1000,
  1475. 'session.gc_maxlifetime': 1440,
  1476. 'session.bug_compat_42': 'Off',
  1477. 'session.bug_compat_warn': 'Off',
  1478. 'session.cache_limiter': 'nocache',
  1479. 'session.cache_expire': '180',
  1480. 'session.use_trans_sid': 0,
  1481. 'session.hash_function': 0,
  1482. 'session.hash_bits_per_character': 5,
  1483. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  1484. },
  1485. 'MSSQL': {
  1486. 'mssql.allow_persistent': 'On',
  1487. 'mssql.max_persistent': -1,
  1488. 'mssql.max_links': -1,
  1489. 'mssql.min_error_severity': 10,
  1490. 'mssql.min_message_severity': 10,
  1491. 'mssql.compatibility_mode': 'Off',
  1492. 'mssql.secure_connection': 'Off'
  1493. },
  1494. 'Tidy': {
  1495. 'tidy.clean_output': 'Off'
  1496. },
  1497. 'soap': {
  1498. 'soap.wsdl_cache_enabled': 1,
  1499. 'soap.wsdl_cache_dir': '"/tmp"',
  1500. 'soap.wsdl_cache_ttl': 86400,
  1501. 'soap.wsdl_cache_limit': 5
  1502. },
  1503. 'ldap': {
  1504. 'ldap.max_links': -1
  1505. },
  1506. },
  1507. },
  1508. }, merge=True) %}
  1509. {%- elif salt['grains.get']('osrelease')|string >= '16.04' %}
  1510. {%- set php = salt['pillar.get']('php', {
  1511. 'lookup': salt['grains.filter_by']({
  1512. 'Ubuntu': {
  1513. 'pkgs': {
  1514. 'adodb': 'libphp-adodb',
  1515. 'apache2': 'libapache2-mod-php',
  1516. 'apc': 'php',
  1517. 'apcu': 'php-apcu',
  1518. 'bcmath': 'php7.0-bcmath',
  1519. 'bz2': 'php7.0-bz2',
  1520. 'cache-lite': 'php-cache-lite',
  1521. 'cgi': 'php-cgi',
  1522. 'cli': 'php-cli',
  1523. 'console-table': 'php-console-table',
  1524. 'composer_bin': 'composer',
  1525. 'curl': 'php-curl',
  1526. 'dba': 'php7.0-dba',
  1527. 'dev': 'php7.0-dev',
  1528. 'fpm': 'php-fpm',
  1529. 'gd': 'php-gd',
  1530. 'geoip': 'php-geoip',
  1531. 'geshi': 'php-geshi',
  1532. 'gmp': 'php-gmp',
  1533. 'hhvm': 'hhvm',
  1534. 'imagick': 'php-imagick',
  1535. 'imap': 'php-imap',
  1536. 'intl': 'php-intl',
  1537. 'json': 'php-json',
  1538. 'ldap': 'php-ldap',
  1539. 'local_bin': '/usr/local/bin',
  1540. 'auth-sasl': 'php-auth-sasl',
  1541. 'mail': 'php-mail',
  1542. 'mbstring': 'php-mbstring',
  1543. 'mcrypt': 'php-mcrypt',
  1544. 'memcache': 'php-memcache',
  1545. 'memcached': 'php-memcached',
  1546. 'mongodb': 'php-mongodb',
  1547. 'mysql': 'php-mysql',
  1548. 'mysqlnd': 'php',
  1549. 'net-smtp': 'php-net-smtp',
  1550. 'net4': 'php-net-ipv4',
  1551. 'net6': 'php-net-ipv6',
  1552. 'oauth': 'php-oauth',
  1553. 'opcache': 'php7.0-opcache',
  1554. 'pear': 'php-pear',
  1555. 'pgsql': 'php-pgsql',
  1556. 'php': 'php',
  1557. 'phpenmod_command': 'phpenmod',
  1558. 'pspell': 'php-pspell',
  1559. 'redis': 'php-redis',
  1560. 'seclib': ['php-phpseclib', 'php-seclib'],
  1561. 'snmp': 'php-snmp',
  1562. 'soap': 'php-soap',
  1563. 'sqlite': 'php-sqlite3',
  1564. 'ssh2': 'php-ssh2',
  1565. 'suhosin': 'php',
  1566. 'sybase': 'php-sybase',
  1567. 'tcpdf': 'php-tcpdf',
  1568. 'temp_dir': '/tmp',
  1569. 'tidy': 'php7.0-tidy',
  1570. 'xcache': 'php',
  1571. 'xdebug': 'php-xdebug',
  1572. 'xml': ['php-xml', 'php-xmlrpc'],
  1573. 'xsl': 'php7.0-xsl',
  1574. 'zip': 'php-zip',
  1575. },
  1576. 'fpm': {
  1577. 'conf': '/etc/php/7.0/fpm/php-fpm.conf',
  1578. 'ini': '/etc/php/7.0/fpm/php.ini',
  1579. 'pools': '/etc/php/7.0/fpm/pool.d',
  1580. 'service': 'php7.0-fpm',
  1581. 'user': 'root',
  1582. 'group': 'root',
  1583. 'defaults': odict([
  1584. ('global', odict([
  1585. ('pid', '/var/run/php7.0-fpm.pid'),
  1586. ('error_log', '/var/log/php7.0-fpm.log'),
  1587. ])),
  1588. ('include', '/etc/php/7.0/fpm/pool.d/*.conf'),
  1589. ]),
  1590. },
  1591. 'hhvm': {
  1592. 'conf': '/etc/hhvm/server.ini',
  1593. 'ini': '/etc/hhvm/php.ini',
  1594. 'service': 'hhvm',
  1595. 'defaults': {},
  1596. 'server': odict([
  1597. ('pid', '/var/run/hhvm/pid'),
  1598. ('hhvm.server.port', '9000'),
  1599. ('hhvm.server.type', 'fastcgi'),
  1600. ('hhvm.server.default_document', 'index.php'),
  1601. ('hhvm.log.use_log_file', 'true'),
  1602. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  1603. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  1604. ]),
  1605. 'php': odict([
  1606. ('session.save_handler', 'files'),
  1607. ('session.save_path', '/var/lib/hhvm/sessions'),
  1608. ('session.gc_maxlifetime', '1440'),
  1609. ('hhvm.log.level', 'Warning'),
  1610. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  1611. ('hhvm.log.runtime_error_reporting_level', '8191'),
  1612. ('hhvm.mysql.typed_results', 'false'),
  1613. ]),
  1614. },
  1615. 'cli': {
  1616. 'ini': '/etc/php/7.0/cli/php.ini',
  1617. },
  1618. 'apache2': {
  1619. 'ini': '/etc/php/7.0/apache2/php.ini',
  1620. },
  1621. 'xcache': {
  1622. 'ini': '/etc/php/7.0/mods-available/xcache.ini',
  1623. 'defaults': {},
  1624. },
  1625. },
  1626. }, grain="os"),
  1627. 'fpm': {
  1628. 'service': {
  1629. 'enabled': True,
  1630. 'opts': {},
  1631. },
  1632. 'config': {
  1633. 'ini': {
  1634. 'opts': {},
  1635. 'settings': {},
  1636. },
  1637. 'conf': {
  1638. 'opts': {},
  1639. 'settings': {},
  1640. },
  1641. },
  1642. 'pools': {
  1643. 'default.conf': {
  1644. 'enabled': False,
  1645. 'opts': {},
  1646. },
  1647. },
  1648. },
  1649. 'hhvm': {
  1650. 'service': {
  1651. 'enabled': True,
  1652. 'opts': {},
  1653. },
  1654. 'config': {
  1655. 'server': {
  1656. 'opts': {},
  1657. 'settings': {},
  1658. },
  1659. 'php': {
  1660. 'opts': {},
  1661. 'settings': {},
  1662. },
  1663. },
  1664. },
  1665. 'cli': {
  1666. 'ini': {
  1667. 'opts': {},
  1668. 'settings': {},
  1669. }
  1670. },
  1671. 'apache2': {
  1672. 'ini': {
  1673. 'opts': {},
  1674. 'settings': {},
  1675. }
  1676. },
  1677. 'xcache': {
  1678. 'ini': {
  1679. 'defaults': {
  1680. 'xcache-common': {
  1681. 'extension': 'xcache.so',
  1682. },
  1683. 'xcache.admin': {
  1684. 'xcache.admin.enable_auth': 'On',
  1685. },
  1686. 'xcache': {
  1687. 'xcache.shm_scheme': '"mmap"',
  1688. 'xcache.size': '60M',
  1689. 'xcache.count': '1',
  1690. 'xcache.slots': '8K',
  1691. 'xcache.ttl': '0',
  1692. 'xcache.gc_interval': '0',
  1693. 'xcache.var_size': '4M',
  1694. 'xcache.var_count': '1',
  1695. 'xcache.var_slots': '8K',
  1696. 'xcache.var_ttl': '0',
  1697. 'xcache.var_maxttl': '0',
  1698. 'xcache.var_gc_interval': '300',
  1699. 'xcache.var_namespace_mode': '0',
  1700. 'xcache.var_namespace': '""',
  1701. 'xcache.readonly_protection': 'Off',
  1702. 'xcache.mmap_path': '"/dev/zero"',
  1703. 'xcache.coredump_directory': '""',
  1704. 'xcache.coredump_type': '0',
  1705. 'xcache.disable_on_crash': 'Off',
  1706. 'xcache.experimental': 'Off',
  1707. 'xcache.cacher': 'On',
  1708. 'xcache.stat': 'On',
  1709. 'xcache.optimizer': 'Off',
  1710. },
  1711. 'xcache.coverager': {
  1712. 'xcache.coverager': 'Off',
  1713. 'xcache.coverager_autostart': 'On',
  1714. 'xcache.coveragedump_directory': '""',
  1715. },
  1716. },
  1717. 'opts': {},
  1718. 'settings': {},
  1719. }
  1720. },
  1721. 'ini': {
  1722. 'defaults': {
  1723. 'PHP': {
  1724. 'allow_url_fopen': 'On',
  1725. 'allow_url_include': 'Off',
  1726. 'asp_tags': 'Off',
  1727. 'auto_globals_jit': 'On',
  1728. 'default_mimetype': '"text/html"',
  1729. 'default_socket_timeout': 60,
  1730. 'disable_functions': [
  1731. 'pcntl_alarm',
  1732. 'pcntl_fork',
  1733. 'pcntl_waitpid',
  1734. 'pcntl_wait',
  1735. 'pcntl_wifexited',
  1736. 'pcntl_wifstopped',
  1737. 'pcntl_wifsignaled',
  1738. 'pcntl_wexitstatus',
  1739. 'pcntl_wtermsig',
  1740. 'pcntl_wstopsig',
  1741. 'pcntl_signal',
  1742. 'pcntl_signal_dispatch',
  1743. 'pcntl_get_last_error',
  1744. 'pcntl_strerror',
  1745. 'pcntl_sigprocmask',
  1746. 'pcntl_sigwaitinfo',
  1747. 'pcntl_sigtimedwait',
  1748. 'pcntl_exec',
  1749. 'pcntl_getpriority',
  1750. 'pcntl_setpriority',
  1751. ],
  1752. 'display_errors': 'Off',
  1753. 'display_startup_errors': 'Off',
  1754. 'enable_dl': 'Off',
  1755. 'engine': 'On',
  1756. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  1757. 'expose_php': 'On',
  1758. 'file_uploads': 'On',
  1759. 'html_errors': 'On',
  1760. 'ignore_repeated_errors': 'Off',
  1761. 'ignore_repeated_source': 'Off',
  1762. 'implicit_flush': 'Off',
  1763. 'log_errors': 'On',
  1764. 'log_errors_max_len': 1024,
  1765. 'max_execution_time': 30,
  1766. 'max_file_uploads': 20,
  1767. 'max_input_nesting_level': 64,
  1768. 'max_input_time': 60,
  1769. 'max_input_vars': 1000,
  1770. 'memory_limit': '128M',
  1771. 'output_buffering': 4096,
  1772. 'post_max_size': '8M',
  1773. 'precision': 14,
  1774. 'register_argc_argv': 'Off',
  1775. 'report_memleaks': 'On',
  1776. 'request_order': 'GP',
  1777. 'serialize_precision': 17,
  1778. 'short_open_tag': 'Off',
  1779. 'track_errors': 'Off',
  1780. 'upload_max_filesize': '2M',
  1781. 'variables_order': 'GPCS',
  1782. 'zend.enable_gc': 'On',
  1783. 'zlib.output_compression': 'Off',
  1784. },
  1785. 'CLI Server': {
  1786. 'cli_server.color': 'On'
  1787. },
  1788. 'Date': {
  1789. 'date.timezone': 'America/New_York'
  1790. },
  1791. 'Pdo_mysql': {
  1792. 'pdo_mysql.cache_size': 2000
  1793. },
  1794. 'mail function': {
  1795. 'SMTP': 'localhost',
  1796. 'mail.add_x_header': 'On'
  1797. },
  1798. 'SQL': {
  1799. 'sql.safe_mode': 'Off'
  1800. },
  1801. 'ODBC': {
  1802. 'odbc.allow_persistent': 'On',
  1803. 'odbc.check_persistent': 'On',
  1804. 'odbc.max_persistent': '-1',
  1805. 'odbc.max_links': '-1',
  1806. 'odbc.defaultlrl': 4096,
  1807. 'odbc.defaultbinmode': 1
  1808. },
  1809. 'Interbase': {
  1810. 'ibase.allow_persistent': 1,
  1811. 'ibase.max_persistent': -1,
  1812. 'ibase.max_links': -1,
  1813. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  1814. 'ibase.dateformat': '"%Y-%m-%d"',
  1815. 'ibase.timeformat': '"%H:%M:%S"'
  1816. },
  1817. 'MySQL': {
  1818. 'mysql.allow_local_infile': 'On',
  1819. 'mysql.allow_persistent': 'On',
  1820. 'mysql.cache_size': '2000',
  1821. 'mysql.max_persistent': -1,
  1822. 'mysql.max_links': -1,
  1823. 'mysql.connect_timeout': 60,
  1824. 'mysql.trace_mode': 'Off'
  1825. },
  1826. 'MySQLi': {
  1827. 'mysqli.max_persistent': -1,
  1828. 'mysqli.allow_persistent': 'On',
  1829. 'mysqli.max_links': -1,
  1830. 'mysqli.cache_size': 2000,
  1831. 'mysqli.default_port': 3306,
  1832. 'mysqli.reconnect': 'Off'
  1833. },
  1834. 'mysqlnd': {
  1835. 'mysqlnd.collect_statistics': 'On',
  1836. 'mysqlnd.collect_memory_statistics': 'Off'
  1837. },
  1838. 'PostgreSQL': {
  1839. 'pgsql.allow_persistent': 'On',
  1840. 'pgsql.auto_reset_persistent': 'Off',
  1841. 'pgsql.max_persistent': -1,
  1842. 'pgsql.max_links': -1,
  1843. 'pgsql.ignore_notice': 0,
  1844. 'pgsql.log_notice': 0
  1845. },
  1846. 'Sybase-CT': {
  1847. 'sybct.allow_persistent': 'On',
  1848. 'sybct.max_persistent': -1,
  1849. 'sybct.max_links': -1,
  1850. 'sybct.min_server_severity': 10,
  1851. 'sybct.min_client_severity': 10
  1852. },
  1853. 'bcmath': {
  1854. 'bcmath.scale': 0
  1855. },
  1856. 'Session': {
  1857. 'session.save_handler': 'files',
  1858. 'session.use_strict_mode': 0,
  1859. 'session.use_cookies': 1,
  1860. 'session.use_only_cookies': 1,
  1861. 'session.name': 'PHPSESSID',
  1862. 'session.auto_start': 0,
  1863. 'session.cookie_lifetime': 0,
  1864. 'session.cookie_path': '/',
  1865. 'session.serialize_handler': 'php',
  1866. 'session.gc_probability': 0,
  1867. 'session.gc_divisor': 1000,
  1868. 'session.gc_maxlifetime': 1440,
  1869. 'session.bug_compat_42': 'Off',
  1870. 'session.bug_compat_warn': 'Off',
  1871. 'session.cache_limiter': 'nocache',
  1872. 'session.cache_expire': '180',
  1873. 'session.use_trans_sid': 0,
  1874. 'session.hash_function': 0,
  1875. 'session.hash_bits_per_character': 5,
  1876. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  1877. },
  1878. 'MSSQL': {
  1879. 'mssql.allow_persistent': 'On',
  1880. 'mssql.max_persistent': -1,
  1881. 'mssql.max_links': -1,
  1882. 'mssql.min_error_severity': 10,
  1883. 'mssql.min_message_severity': 10,
  1884. 'mssql.compatibility_mode': 'Off',
  1885. 'mssql.secure_connection': 'Off'
  1886. },
  1887. 'Tidy': {
  1888. 'tidy.clean_output': 'Off'
  1889. },
  1890. 'soap': {
  1891. 'soap.wsdl_cache_enabled': 1,
  1892. 'soap.wsdl_cache_dir': '"/tmp"',
  1893. 'soap.wsdl_cache_ttl': 86400,
  1894. 'soap.wsdl_cache_limit': 5
  1895. },
  1896. 'ldap': {
  1897. 'ldap.max_links': -1
  1898. },
  1899. },
  1900. },
  1901. }, merge=True) %}
  1902. {%- else %}
  1903. {%- set php = salt['pillar.get']('php', {
  1904. 'lookup': salt['grains.filter_by']({
  1905. 'Ubuntu': {
  1906. 'pkgs': {
  1907. 'adodb': 'php5-adodb',
  1908. 'apache2': 'libapache2-mod-php5',
  1909. 'apc': 'php-apc',
  1910. 'apcu': 'php5-apcu',
  1911. 'bcmath': 'php5',
  1912. 'build_pkgs': ['libssl-dev', 'libcurl4-openssl-dev'],
  1913. 'cache-lite': 'php-cache-lite',
  1914. 'cgi': 'php5-cgi',
  1915. 'cli': 'php5-cli',
  1916. 'composer_bin': 'composer',
  1917. 'console-table': 'php-console-table',
  1918. 'curl': 'php5-curl',
  1919. 'dev': ['php5-dev','build-essential'],
  1920. 'ext_conf_path': salt['grains.filter_by']({
  1921. 'precise': '/etc/php5/conf.d',
  1922. 'default': '/etc/php5/mods-available',
  1923. }, grain='oscodename'),
  1924. 'fpm': 'php5-fpm',
  1925. 'gd': 'php5-gd',
  1926. 'gearman': 'php5-gearman',
  1927. 'geoip': 'php5-geoip',
  1928. 'geshi': 'php-geshi',
  1929. 'gettext': 'php-gettext',
  1930. 'gmp': 'php5-gmp',
  1931. 'hhvm': 'hhvm',
  1932. 'imagick': 'php5-imagick',
  1933. 'imap': 'php5-imap',
  1934. 'intl': 'php5-intl',
  1935. 'json': 'php5-json',
  1936. 'ldap': 'php5-ldap',
  1937. 'local_bin': '/usr/local/bin',
  1938. 'auth-sasl': 'php-auth-sasl',
  1939. 'mail': 'php-mail',
  1940. 'mbstring': 'php5',
  1941. 'mcrypt': 'php5-mcrypt',
  1942. 'mdb2': 'php-mdb2',
  1943. 'mdb2-driver-mysql': 'php-mdb2-driver-mysql',
  1944. 'mdb2-driver-pgsql': 'php-mdb2-driver-pgsql',
  1945. 'memcache': 'php5-memcache',
  1946. 'memcached': 'php5-memcached',
  1947. 'mongodb': salt['grains.filter_by']({
  1948. 'trusty': 'php5-mongo',
  1949. 'default': '',
  1950. }, grain='oscodename'),
  1951. 'mysql': 'php5-mysql',
  1952. 'mysqlnd': 'php5-mysqlnd',
  1953. 'net-smtp': 'php-net-smtp',
  1954. 'net4': 'php-net-ipv4',
  1955. 'net6': 'php-net-ipv6',
  1956. 'oauth': 'php5-oauth',
  1957. 'opcache': 'php5',
  1958. 'pear': 'php-pear',
  1959. 'pgsql': 'php5-pgsql',
  1960. 'php': 'php5',
  1961. 'phpenmod_command': salt['grains.filter_by']({
  1962. 'precise': 'true',
  1963. 'default': 'php5enmod',
  1964. }, grain='oscodename'),
  1965. 'pspell': 'php5-pspell',
  1966. 'redis': 'php5-redis',
  1967. 'seclib': 'php-seclib',
  1968. 'snmp': 'php5-snmp',
  1969. 'soap': 'php-soap',
  1970. 'sqlite': 'php5-sqlite',
  1971. 'ssh2': 'libssh2-php',
  1972. 'suhosin5_ext': 'suhosin.so',
  1973. 'suhosin5_repo': 'https://github.com/sektioneins/suhosin',
  1974. 'suhosin7_ext': 'suhosin7.so',
  1975. 'suhosin7_repo': 'https://github.com/sektioneins/suhosin7',
  1976. 'svn': 'php5-svn',
  1977. 'tcpdf': 'php-tcpdf',
  1978. 'tidy': 'php5-tidy',
  1979. 'temp_dir': '/tmp',
  1980. 'xcache': 'php5-xcache',
  1981. 'xdebug': 'php5-xdebug',
  1982. 'xml': 'php5',
  1983. 'xsl': 'php5-xsl',
  1984. 'zip': 'php5',
  1985. },
  1986. 'fpm': {
  1987. 'conf': '/etc/php5/fpm/php-fpm.conf',
  1988. 'ini': '/etc/php5/fpm/php.ini',
  1989. 'pools': '/etc/php5/fpm/pool.d',
  1990. 'service': 'php5-fpm',
  1991. 'user': 'root',
  1992. 'group': 'root',
  1993. 'defaults': odict([
  1994. ('global', odict([
  1995. ('pid', '/var/run/php5-fpm.pid'),
  1996. ('error_log', '/var/log/php5-fpm.log'),
  1997. ])),
  1998. ('include', '/etc/php5/fpm/pool.d/*.conf'),
  1999. ]),
  2000. },
  2001. 'hhvm': {
  2002. 'conf': '/etc/hhvm/server.ini',
  2003. 'ini': '/etc/hhvm/php.ini',
  2004. 'service': 'hhvm',
  2005. 'defaults': {},
  2006. 'server': odict([
  2007. ('pid', '/var/run/hhvm/pid'),
  2008. ('hhvm.server.port', '9000'),
  2009. ('hhvm.server.type', 'fastcgi'),
  2010. ('hhvm.server.default_document', 'index.php'),
  2011. ('hhvm.log.use_log_file', 'true'),
  2012. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  2013. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  2014. ]),
  2015. 'php': odict([
  2016. ('session.save_handler', 'files'),
  2017. ('session.save_path', '/var/lib/hhvm/sessions'),
  2018. ('session.gc_maxlifetime', '1440'),
  2019. ('hhvm.log.level', 'Warning'),
  2020. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  2021. ('hhvm.log.runtime_error_reporting_level', '8191'),
  2022. ('hhvm.mysql.typed_results', 'false'),
  2023. ]),
  2024. },
  2025. 'cli': {
  2026. 'ini': '/etc/php5/cli/php.ini',
  2027. },
  2028. 'apache2': {
  2029. 'ini': '/etc/php5/apache2/php.ini',
  2030. },
  2031. 'xcache': {
  2032. 'ini': '/etc/php5/mods-available/xcache.ini',
  2033. 'defaults': {},
  2034. },
  2035. },
  2036. }, grain="os"),
  2037. 'fpm': {
  2038. 'service': {
  2039. 'enabled': True,
  2040. 'opts': {},
  2041. },
  2042. 'config': {
  2043. 'ini': {
  2044. 'opts': {},
  2045. 'settings': {},
  2046. },
  2047. 'conf': {
  2048. 'opts': {},
  2049. 'settings': {},
  2050. },
  2051. },
  2052. 'pools': {
  2053. 'default.conf': {
  2054. 'enabled': False,
  2055. 'opts': {},
  2056. },
  2057. },
  2058. },
  2059. 'hhvm': {
  2060. 'service': {
  2061. 'enabled': True,
  2062. 'opts': {},
  2063. },
  2064. 'config': {
  2065. 'server': {
  2066. 'opts': {},
  2067. 'settings': {},
  2068. },
  2069. 'php': {
  2070. 'opts': {},
  2071. 'settings': {},
  2072. },
  2073. },
  2074. },
  2075. 'cli': {
  2076. 'ini': {
  2077. 'opts': {},
  2078. 'settings': {},
  2079. }
  2080. },
  2081. 'apache2': {
  2082. 'ini': {
  2083. 'opts': {},
  2084. 'settings': {},
  2085. }
  2086. },
  2087. 'xcache': {
  2088. 'ini': {
  2089. 'defaults': {
  2090. 'xcache-common': {
  2091. 'extension': 'xcache.so',
  2092. },
  2093. 'xcache.admin': {
  2094. 'xcache.admin.enable_auth': 'On',
  2095. },
  2096. 'xcache': {
  2097. 'xcache.shm_scheme': '"mmap"',
  2098. 'xcache.size': '60M',
  2099. 'xcache.count': '1',
  2100. 'xcache.slots': '8K',
  2101. 'xcache.ttl': '0',
  2102. 'xcache.gc_interval': '0',
  2103. 'xcache.var_size': '4M',
  2104. 'xcache.var_count': '1',
  2105. 'xcache.var_slots': '8K',
  2106. 'xcache.var_ttl': '0',
  2107. 'xcache.var_maxttl': '0',
  2108. 'xcache.var_gc_interval': '300',
  2109. 'xcache.var_namespace_mode': '0',
  2110. 'xcache.var_namespace': '""',
  2111. 'xcache.readonly_protection': 'Off',
  2112. 'xcache.mmap_path': '"/dev/zero"',
  2113. 'xcache.coredump_directory': '""',
  2114. 'xcache.coredump_type': '0',
  2115. 'xcache.disable_on_crash': 'Off',
  2116. 'xcache.experimental': 'Off',
  2117. 'xcache.cacher': 'On',
  2118. 'xcache.stat': 'On',
  2119. 'xcache.optimizer': 'Off',
  2120. },
  2121. 'xcache.coverager': {
  2122. 'xcache.coverager': 'Off',
  2123. 'xcache.coverager_autostart': 'On',
  2124. 'xcache.coveragedump_directory': '""',
  2125. },
  2126. },
  2127. 'opts': {},
  2128. 'settings': {},
  2129. }
  2130. },
  2131. 'ini': {
  2132. 'defaults': {
  2133. 'PHP': {
  2134. 'allow_url_fopen': 'On',
  2135. 'allow_url_include': 'Off',
  2136. 'asp_tags': 'Off',
  2137. 'auto_globals_jit': 'On',
  2138. 'default_mimetype': '"text/html"',
  2139. 'default_socket_timeout': 60,
  2140. 'disable_functions': [
  2141. 'pcntl_alarm',
  2142. 'pcntl_fork',
  2143. 'pcntl_waitpid',
  2144. 'pcntl_wait',
  2145. 'pcntl_wifexited',
  2146. 'pcntl_wifstopped',
  2147. 'pcntl_wifsignaled',
  2148. 'pcntl_wexitstatus',
  2149. 'pcntl_wtermsig',
  2150. 'pcntl_wstopsig',
  2151. 'pcntl_signal',
  2152. 'pcntl_signal_dispatch',
  2153. 'pcntl_get_last_error',
  2154. 'pcntl_strerror',
  2155. 'pcntl_sigprocmask',
  2156. 'pcntl_sigwaitinfo',
  2157. 'pcntl_sigtimedwait',
  2158. 'pcntl_exec',
  2159. 'pcntl_getpriority',
  2160. 'pcntl_setpriority',
  2161. ],
  2162. 'display_errors': 'Off',
  2163. 'display_startup_errors': 'Off',
  2164. 'enable_dl': 'Off',
  2165. 'engine': 'On',
  2166. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  2167. 'expose_php': 'On',
  2168. 'file_uploads': 'On',
  2169. 'html_errors': 'On',
  2170. 'ignore_repeated_errors': 'Off',
  2171. 'ignore_repeated_source': 'Off',
  2172. 'implicit_flush': 'Off',
  2173. 'log_errors': 'On',
  2174. 'log_errors_max_len': 1024,
  2175. 'max_execution_time': 30,
  2176. 'max_file_uploads': 20,
  2177. 'max_input_nesting_level': 64,
  2178. 'max_input_time': 60,
  2179. 'max_input_vars': 1000,
  2180. 'memory_limit': '128M',
  2181. 'output_buffering': 4096,
  2182. 'post_max_size': '8M',
  2183. 'precision': 14,
  2184. 'register_argc_argv': 'Off',
  2185. 'report_memleaks': 'On',
  2186. 'request_order': 'GP',
  2187. 'serialize_precision': 17,
  2188. 'short_open_tag': 'Off',
  2189. 'track_errors': 'Off',
  2190. 'upload_max_filesize': '2M',
  2191. 'variables_order': 'GPCS',
  2192. 'zend.enable_gc': 'On',
  2193. 'zlib.output_compression': 'Off',
  2194. },
  2195. 'CLI Server': {
  2196. 'cli_server.color': 'On'
  2197. },
  2198. 'Date': {
  2199. 'date.timezone': 'America/New_York'
  2200. },
  2201. 'Pdo_mysql': {
  2202. 'pdo_mysql.cache_size': 2000
  2203. },
  2204. 'mail function': {
  2205. 'SMTP': 'localhost',
  2206. 'mail.add_x_header': 'On'
  2207. },
  2208. 'SQL': {
  2209. 'sql.safe_mode': 'Off'
  2210. },
  2211. 'ODBC': {
  2212. 'odbc.allow_persistent': 'On',
  2213. 'odbc.check_persistent': 'On',
  2214. 'odbc.max_persistent': '-1',
  2215. 'odbc.max_links': '-1',
  2216. 'odbc.defaultlrl': 4096,
  2217. 'odbc.defaultbinmode': 1
  2218. },
  2219. 'Interbase': {
  2220. 'ibase.allow_persistent': 1,
  2221. 'ibase.max_persistent': -1,
  2222. 'ibase.max_links': -1,
  2223. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  2224. 'ibase.dateformat': '"%Y-%m-%d"',
  2225. 'ibase.timeformat': '"%H:%M:%S"'
  2226. },
  2227. 'MySQL': {
  2228. 'mysql.allow_local_infile': 'On',
  2229. 'mysql.allow_persistent': 'On',
  2230. 'mysql.cache_size': '2000',
  2231. 'mysql.max_persistent': -1,
  2232. 'mysql.max_links': -1,
  2233. 'mysql.connect_timeout': 60,
  2234. 'mysql.trace_mode': 'Off'
  2235. },
  2236. 'MySQLi': {
  2237. 'mysqli.max_persistent': -1,
  2238. 'mysqli.allow_persistent': 'On',
  2239. 'mysqli.max_links': -1,
  2240. 'mysqli.cache_size': 2000,
  2241. 'mysqli.default_port': 3306,
  2242. 'mysqli.reconnect': 'Off'
  2243. },
  2244. 'mysqlnd': {
  2245. 'mysqlnd.collect_statistics': 'On',
  2246. 'mysqlnd.collect_memory_statistics': 'Off'
  2247. },
  2248. 'PostgreSQL': {
  2249. 'pgsql.allow_persistent': 'On',
  2250. 'pgsql.auto_reset_persistent': 'Off',
  2251. 'pgsql.max_persistent': -1,
  2252. 'pgsql.max_links': -1,
  2253. 'pgsql.ignore_notice': 0,
  2254. 'pgsql.log_notice': 0
  2255. },
  2256. 'Sybase-CT': {
  2257. 'sybct.allow_persistent': 'On',
  2258. 'sybct.max_persistent': -1,
  2259. 'sybct.max_links': -1,
  2260. 'sybct.min_server_severity': 10,
  2261. 'sybct.min_client_severity': 10
  2262. },
  2263. 'bcmath': {
  2264. 'bcmath.scale': 0
  2265. },
  2266. 'Session': {
  2267. 'session.save_handler': 'files',
  2268. 'session.use_strict_mode': 0,
  2269. 'session.use_cookies': 1,
  2270. 'session.use_only_cookies': 1,
  2271. 'session.name': 'PHPSESSID',
  2272. 'session.auto_start': 0,
  2273. 'session.cookie_lifetime': 0,
  2274. 'session.cookie_path': '/',
  2275. 'session.serialize_handler': 'php',
  2276. 'session.gc_probability': 0,
  2277. 'session.gc_divisor': 1000,
  2278. 'session.gc_maxlifetime': 1440,
  2279. 'session.bug_compat_42': 'Off',
  2280. 'session.bug_compat_warn': 'Off',
  2281. 'session.cache_limiter': 'nocache',
  2282. 'session.cache_expire': '180',
  2283. 'session.use_trans_sid': 0,
  2284. 'session.hash_function': 0,
  2285. 'session.hash_bits_per_character': 5,
  2286. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  2287. },
  2288. 'MSSQL': {
  2289. 'mssql.allow_persistent': 'On',
  2290. 'mssql.max_persistent': -1,
  2291. 'mssql.max_links': -1,
  2292. 'mssql.min_error_severity': 10,
  2293. 'mssql.min_message_severity': 10,
  2294. 'mssql.compatibility_mode': 'Off',
  2295. 'mssql.secure_connection': 'Off'
  2296. },
  2297. 'Tidy': {
  2298. 'tidy.clean_output': 'Off'
  2299. },
  2300. 'soap': {
  2301. 'soap.wsdl_cache_enabled': 1,
  2302. 'soap.wsdl_cache_dir': '"/tmp"',
  2303. 'soap.wsdl_cache_ttl': 86400,
  2304. 'soap.wsdl_cache_limit': 5
  2305. },
  2306. 'ldap': {
  2307. 'ldap.max_links': -1
  2308. },
  2309. },
  2310. },
  2311. }, merge=True) %}
  2312. {%- endif %}
  2313. {%- endif %}
  2314. {%- elif salt['grains.get']('os') == "Debian" %}
  2315. {%- if php_version|string == '5' %}
  2316. {%- set confdir = '/etc/php5' %}
  2317. {%- else %}
  2318. {%- set confdir = '/etc/php/' + php_version %}
  2319. {%- endif %}
  2320. {%- set php = salt['pillar.get']('php', {
  2321. 'lookup': salt['grains.filter_by']({
  2322. 'Debian': {
  2323. 'pkgs': {
  2324. 'adodb': 'libphp-adodb',
  2325. 'apache2': 'libapache2-mod-php' + php_version,
  2326. 'apc': 'php-apcu',
  2327. 'apcu': 'php-apcu-bc',
  2328. 'bcmath': 'php' + php_version + '-bcmath',
  2329. 'bz2': 'php' + php_version + '-bz2',
  2330. 'build_pkgs': [
  2331. 'libssl-dev',
  2332. 'libcurl4-openssl-dev',
  2333. 'pkg-config',
  2334. 'libsslcommon2-dev',
  2335. 'gcc',
  2336. 'make',
  2337. 'autoconf',
  2338. 'libc-dev',
  2339. 'pkg-config',
  2340. ],
  2341. 'cache-lite': 'php-cache-lite',
  2342. 'cgi': 'php' + php_version + '-cgi',
  2343. 'cli': 'php' + php_version + '-cli',
  2344. 'composer_bin': 'composer',
  2345. 'console-table': 'php-console-table',
  2346. 'curl': 'php' + php_version + '-curl',
  2347. 'dba': 'php' + php_version + '-dba',
  2348. 'dev': 'php' + php_version + '-dev',
  2349. 'ext_conf_path': '/etc/php/' + php_version + '/mods-available',
  2350. 'fpm': 'php' + php_version + '-fpm',
  2351. 'gd': 'php' + php_version + '-gd',
  2352. 'gearman': 'php-gearman',
  2353. 'geoip': 'php-geoip',
  2354. 'geshi': 'php-geshi',
  2355. 'gettext': 'php' + php_version,
  2356. 'gmp': 'php' + php_version + '-gmp',
  2357. 'hhvm': 'hhvm',
  2358. 'igbinary': 'php-igbinary',
  2359. 'imagick': 'php-imagick',
  2360. 'imap': 'php' + php_version + '-imap',
  2361. 'intl': 'php' + php_version + '-intl',
  2362. 'json': 'php' + php_version + '-json',
  2363. 'ldap': 'php' + php_version + '-ldap',
  2364. 'local_bin': '/usr/local/bin',
  2365. 'auth-sasl': 'php-auth-sasl',
  2366. 'mail': 'php-mail',
  2367. 'mbstring': 'php' + php_version + '-mbstring',
  2368. 'mcrypt': 'php' + php_version + '-mcrypt',
  2369. 'memcache': 'php-memcache',
  2370. 'memcached': 'php-memcached',
  2371. 'mongo': 'php-mongo',
  2372. 'mongodb': 'php-mongodb',
  2373. 'msgpack': 'php-msgpack',
  2374. 'mysql': 'php' + php_version + '-mysql',
  2375. 'mysqlnd': 'php' + php_version + '-mysql',
  2376. 'net-smtp': 'php-net-smtp',
  2377. 'net4': 'php-net-ipv4',
  2378. 'net6': 'php-net-ipv6',
  2379. 'oauth': 'php-oauth',
  2380. 'odbc': 'php-odbc',
  2381. 'opcache': 'php' + php_version + '-opcache',
  2382. 'pear': 'php-pear',
  2383. 'pgsql': 'php' + php_version + '-pgsql',
  2384. 'php': 'php' + php_version,
  2385. 'phpenmod_command': 'phpenmod -v' + php_version,
  2386. 'pspell': 'php' + php_version + '-pspell',
  2387. 'readline': 'php' + php_version + '-readline',
  2388. 'redis': 'php-redis',
  2389. 'seclib': ['php-phpseclib', 'php-seclib'],
  2390. 'snmp': 'php' + php_version + '-snmp',
  2391. 'soap': 'php' + php_version + '-soap',
  2392. 'ssh2': 'php-ssh2',
  2393. 'sqlite': 'php' + php_version + '-sqlite3',
  2394. 'suhosin5_ext': 'suhosin.so',
  2395. 'suhosin5_repo': 'https://github.com/sektioneins/suhosin',
  2396. 'suhosin7_ext': 'suhosin7.so',
  2397. 'suhosin7_repo': 'https://github.com/sektioneins/suhosin7',
  2398. 'sybase': 'php' + php_version + '-sybase',
  2399. 'tcpdf': 'php-tcpdf',
  2400. 'temp_dir': '/tmp',
  2401. 'tidy': 'php' + php_version + '-tidy',
  2402. 'xdebug': 'php-xdebug',
  2403. 'xml': ['php' + php_version + '-xml', 'php' + php_version + '-xmlrpc'],
  2404. 'xsl': 'php' + php_version + '-xsl',
  2405. 'zip': 'php' + php_version + '-zip',
  2406. },
  2407. 'fpm': {
  2408. 'conf': confdir + '/fpm/php-fpm.conf',
  2409. 'ini': confdir + '/fpm/php.ini',
  2410. 'pools': confdir + '/fpm/pool.d',
  2411. 'user': 'root',
  2412. 'group': 'root',
  2413. 'service': 'php' + php_version + '-fpm',
  2414. 'user': 'root',
  2415. 'group': 'root',
  2416. 'defaults': odict([
  2417. ('global', odict([
  2418. ('pid', '/var/run/php' + php_version + '-fpm.pid'),
  2419. ('error_log', '/var/log/php' + php_version + '-fpm.log'),
  2420. ])),
  2421. ('include', confdir + '/fpm/pool.d/*.conf'),
  2422. ]),
  2423. },
  2424. 'hhvm': {
  2425. 'conf': '/etc/hhvm/server.ini',
  2426. 'ini': '/etc/hhvm/php.ini',
  2427. 'service': 'hhvm',
  2428. 'defaults': {},
  2429. 'server': odict([
  2430. ('pid', '/var/run/hhvm/pid'),
  2431. ('hhvm.server.port', '9000'),
  2432. ('hhvm.server.type', 'fastcgi'),
  2433. ('hhvm.server.default_document', 'index.php'),
  2434. ('hhvm.log.use_log_file', 'true'),
  2435. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  2436. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  2437. ]),
  2438. 'php': odict([
  2439. ('session.save_handler', 'files'),
  2440. ('session.save_path', '/var/lib/hhvm/sessions'),
  2441. ('session.gc_maxlifetime', '1440'),
  2442. ('hhvm.log.level', 'Warning'),
  2443. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  2444. ('hhvm.log.runtime_error_reporting_level', '8191'),
  2445. ('hhvm.mysql.typed_results', 'false'),
  2446. ]),
  2447. },
  2448. 'cli': {
  2449. 'ini': confdir + '/cli/php.ini',
  2450. },
  2451. 'apache2': {
  2452. 'ini': confdir + '/apache2/php.ini',
  2453. },
  2454. },
  2455. }),
  2456. 'fpm': {
  2457. 'service': {
  2458. 'enabled': True,
  2459. 'opts': {},
  2460. },
  2461. 'config': {
  2462. 'ini': {
  2463. 'opts': {},
  2464. 'settings': {},
  2465. },
  2466. 'conf': {
  2467. 'opts': {},
  2468. 'settings': {},
  2469. },
  2470. },
  2471. 'pools': {},
  2472. },
  2473. 'hhvm': {
  2474. 'service': {
  2475. 'enabled': True,
  2476. 'opts': {},
  2477. },
  2478. 'config': {
  2479. 'server': {
  2480. 'opts': {},
  2481. 'settings': {},
  2482. },
  2483. 'php': {
  2484. 'opts': {},
  2485. 'settings': {},
  2486. },
  2487. },
  2488. },
  2489. 'cli': {
  2490. 'ini': {
  2491. 'opts': {},
  2492. 'settings': {},
  2493. }
  2494. },
  2495. 'apache2': {
  2496. 'ini': {
  2497. 'opts': {},
  2498. 'settings': {},
  2499. }
  2500. },
  2501. 'ini': {
  2502. 'defaults': {
  2503. 'PHP': {
  2504. 'allow_url_fopen': 'On',
  2505. 'allow_url_include': 'Off',
  2506. 'asp_tags': 'Off',
  2507. 'auto_globals_jit': 'On',
  2508. 'default_mimetype': '"text/html"',
  2509. 'default_socket_timeout': 60,
  2510. 'disable_functions': [
  2511. 'pcntl_alarm',
  2512. 'pcntl_fork',
  2513. 'pcntl_waitpid',
  2514. 'pcntl_wait',
  2515. 'pcntl_wifexited',
  2516. 'pcntl_wifstopped',
  2517. 'pcntl_wifsignaled',
  2518. 'pcntl_wexitstatus',
  2519. 'pcntl_wtermsig',
  2520. 'pcntl_wstopsig',
  2521. 'pcntl_signal',
  2522. 'pcntl_signal_dispatch',
  2523. 'pcntl_get_last_error',
  2524. 'pcntl_strerror',
  2525. 'pcntl_sigprocmask',
  2526. 'pcntl_sigwaitinfo',
  2527. 'pcntl_sigtimedwait',
  2528. 'pcntl_exec',
  2529. 'pcntl_getpriority',
  2530. 'pcntl_setpriority',
  2531. ],
  2532. 'display_errors': 'Off',
  2533. 'display_startup_errors': 'Off',
  2534. 'enable_dl': 'Off',
  2535. 'engine': 'On',
  2536. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  2537. 'expose_php': 'On',
  2538. 'file_uploads': 'On',
  2539. 'html_errors': 'On',
  2540. 'ignore_repeated_errors': 'Off',
  2541. 'ignore_repeated_source': 'Off',
  2542. 'implicit_flush': 'Off',
  2543. 'log_errors': 'On',
  2544. 'log_errors_max_len': 1024,
  2545. 'max_execution_time': 30,
  2546. 'max_file_uploads': 20,
  2547. 'max_input_nesting_level': 64,
  2548. 'max_input_time': 60,
  2549. 'max_input_vars': 1000,
  2550. 'memory_limit': '128M',
  2551. 'output_buffering': 4096,
  2552. 'post_max_size': '8M',
  2553. 'precision': 14,
  2554. 'register_argc_argv': 'Off',
  2555. 'report_memleaks': 'On',
  2556. 'request_order': 'GP',
  2557. 'serialize_precision': 17,
  2558. 'short_open_tag': 'Off',
  2559. 'track_errors': 'Off',
  2560. 'upload_max_filesize': '2M',
  2561. 'variables_order': 'GPCS',
  2562. 'zend.enable_gc': 'On',
  2563. 'zlib.output_compression': 'Off',
  2564. },
  2565. 'CLI Server': {
  2566. 'cli_server.color': 'On'
  2567. },
  2568. 'Date': {
  2569. 'date.timezone': 'America/New_York'
  2570. },
  2571. 'Pdo_mysql': {
  2572. 'pdo_mysql.cache_size': 2000
  2573. },
  2574. 'mail function': {
  2575. 'SMTP': 'localhost',
  2576. 'mail.add_x_header': 'On'
  2577. },
  2578. 'SQL': {
  2579. 'sql.safe_mode': 'Off'
  2580. },
  2581. 'ODBC': {
  2582. 'odbc.allow_persistent': 'On',
  2583. 'odbc.check_persistent': 'On',
  2584. 'odbc.max_persistent': '-1',
  2585. 'odbc.max_links': '-1',
  2586. 'odbc.defaultlrl': 4096,
  2587. 'odbc.defaultbinmode': 1
  2588. },
  2589. 'Interbase': {
  2590. 'ibase.allow_persistent': 1,
  2591. 'ibase.max_persistent': -1,
  2592. 'ibase.max_links': -1,
  2593. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  2594. 'ibase.dateformat': '"%Y-%m-%d"',
  2595. 'ibase.timeformat': '"%H:%M:%S"'
  2596. },
  2597. 'MySQL': {
  2598. 'mysql.allow_local_infile': 'On',
  2599. 'mysql.allow_persistent': 'On',
  2600. 'mysql.cache_size': '2000',
  2601. 'mysql.max_persistent': -1,
  2602. 'mysql.max_links': -1,
  2603. 'mysql.connect_timeout': 60,
  2604. 'mysql.trace_mode': 'Off'
  2605. },
  2606. 'MySQLi': {
  2607. 'mysqli.max_persistent': -1,
  2608. 'mysqli.allow_persistent': 'On',
  2609. 'mysqli.max_links': -1,
  2610. 'mysqli.cache_size': 2000,
  2611. 'mysqli.default_port': 3306,
  2612. 'mysqli.reconnect': 'Off'
  2613. },
  2614. 'mysqlnd': {
  2615. 'mysqlnd.collect_statistics': 'On',
  2616. 'mysqlnd.collect_memory_statistics': 'Off'
  2617. },
  2618. 'PostgreSQL': {
  2619. 'pgsql.allow_persistent': 'On',
  2620. 'pgsql.auto_reset_persistent': 'Off',
  2621. 'pgsql.max_persistent': -1,
  2622. 'pgsql.max_links': -1,
  2623. 'pgsql.ignore_notice': 0,
  2624. 'pgsql.log_notice': 0
  2625. },
  2626. 'Sybase-CT': {
  2627. 'sybct.allow_persistent': 'On',
  2628. 'sybct.max_persistent': -1,
  2629. 'sybct.max_links': -1,
  2630. 'sybct.min_server_severity': 10,
  2631. 'sybct.min_client_severity': 10
  2632. },
  2633. 'bcmath': {
  2634. 'bcmath.scale': 0
  2635. },
  2636. 'Session': {
  2637. 'session.save_handler': 'files',
  2638. 'session.use_strict_mode': 0,
  2639. 'session.use_cookies': 1,
  2640. 'session.use_only_cookies': 1,
  2641. 'session.name': 'PHPSESSID',
  2642. 'session.auto_start': 0,
  2643. 'session.cookie_lifetime': 0,
  2644. 'session.cookie_path': '/',
  2645. 'session.serialize_handler': 'php',
  2646. 'session.gc_probability': 0,
  2647. 'session.gc_divisor': 1000,
  2648. 'session.gc_maxlifetime': 1440,
  2649. 'session.bug_compat_42': 'Off',
  2650. 'session.bug_compat_warn': 'Off',
  2651. 'session.cache_limiter': 'nocache',
  2652. 'session.cache_expire': '180',
  2653. 'session.use_trans_sid': 0,
  2654. 'session.hash_function': 0,
  2655. 'session.hash_bits_per_character': 5,
  2656. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  2657. },
  2658. 'MSSQL': {
  2659. 'mssql.allow_persistent': 'On',
  2660. 'mssql.max_persistent': -1,
  2661. 'mssql.max_links': -1,
  2662. 'mssql.min_error_severity': 10,
  2663. 'mssql.min_message_severity': 10,
  2664. 'mssql.compatibility_mode': 'Off',
  2665. 'mssql.secure_connection': 'Off'
  2666. },
  2667. 'Tidy': {
  2668. 'tidy.clean_output': 'Off'
  2669. },
  2670. 'soap': {
  2671. 'soap.wsdl_cache_enabled': 1,
  2672. 'soap.wsdl_cache_dir': '"/tmp"',
  2673. 'soap.wsdl_cache_ttl': 86400,
  2674. 'soap.wsdl_cache_limit': 5
  2675. },
  2676. 'ldap': {
  2677. 'ldap.max_links': -1
  2678. },
  2679. },
  2680. },
  2681. }, merge=True) %}
  2682. {%- else %}
  2683. {%- set useversion = php_version | replace('.', '-') -%}
  2684. {#- Red Hat Softwarecollection prefix lookup belongs to the Red Hat part
  2685. further down but has to go here due to Jinja parsing rules. -#}
  2686. {%- if salt['pillar.get']('php:use_scl_repo', False) -%}
  2687. {%- set rh_prefix = 'rh-php{}-'.format(salt['pillar.get']('php:scl_php_version', '')) -%}
  2688. {%- set sclo_prefix = 'sclo-php{}-'.format(salt['pillar.get']('php:scl_php_version', '')) -%}
  2689. {%- set path_suffix = 'opt/rh/rh-php{}/'.format(salt['pillar.get']('php:scl_php_version', '')) -%}
  2690. {%- else -%}
  2691. {%- set rh_prefix = '' -%}
  2692. {%- set sclo_prefix = '' -%}
  2693. {%- set path_suffix = '' -%}
  2694. {%- endif -%}
  2695. {%- set php = salt['pillar.get']('php', {
  2696. 'lookup': salt['grains.filter_by']({
  2697. 'Debian': {
  2698. 'pkgs': {
  2699. 'adodb': 'php5-adodb',
  2700. 'apache2': 'libapache2-mod-php5',
  2701. 'apc': 'php-apc',
  2702. 'apcu': 'php5-apcu',
  2703. 'bcmath': 'php5',
  2704. 'build_pkgs': ['libssl-dev', 'libcurl4-openssl-dev'],
  2705. 'bz2': 'php5-bz2',
  2706. 'cache-lite': 'php-cache-lite',
  2707. 'cgi': 'php5-cgi',
  2708. 'cli': 'php5-cli',
  2709. 'console-table': 'php-console-table',
  2710. 'composer_bin': 'composer',
  2711. 'curl': 'php5-curl',
  2712. 'dba': 'php5-dba',
  2713. 'dev': ['php5-dev','build-essential'],
  2714. 'ext_conf_path': '/etc/php5/mods-available',
  2715. 'fpm': 'php5-fpm',
  2716. 'gd': 'php5-gd',
  2717. 'gearman': 'php5-gearman',
  2718. 'geoip': 'php5-geoip',
  2719. 'geshi': 'php-geshi',
  2720. 'gettext': 'php-gettext',
  2721. 'gmp': 'php5-gmp',
  2722. 'hhvm': 'hhvm',
  2723. 'imagick': 'php5-imagick',
  2724. 'imap': 'php5-imap',
  2725. 'intl': 'php5-intl',
  2726. 'json': 'php5-json',
  2727. 'ldap': 'php5-ldap',
  2728. 'local_bin': '/usr/local/bin',
  2729. 'auth-sasl': 'php-auth-sasl',
  2730. 'mail': 'php-mail',
  2731. 'mbstring': 'php5',
  2732. 'mcrypt': 'php5-mcrypt',
  2733. 'mdb2': 'php-mdb2',
  2734. 'mdb2-driver-mysql': 'php-mdb2-driver-mysql',
  2735. 'mdb2-driver-pgsql': 'php-mdb2-driver-pgsql',
  2736. 'memcache': 'php5-memcache',
  2737. 'memcached': 'php5-memcached',
  2738. 'mysql': 'php5-mysql',
  2739. 'mysqlnd': 'php5-mysqlnd',
  2740. 'net-smtp': 'php-net-smtp',
  2741. 'net4': 'php-net-ipv4',
  2742. 'net6': 'php-net-ipv6',
  2743. 'oauth': 'php5-oauth',
  2744. 'odbc': 'php-odbc',
  2745. 'opcache': 'php5',
  2746. 'pear': 'php-pear',
  2747. 'pgsql': 'php5-pgsql',
  2748. 'php': 'php5',
  2749. 'phpenmod_command': 'php5enmod',
  2750. 'pspell': 'php5-pspell',
  2751. 'redis': 'php5-redis',
  2752. 'seclib': 'php-seclib',
  2753. 'snmp': 'php5-snmp',
  2754. 'soap': 'php-soap',
  2755. 'sqlite': 'php5-sqlite',
  2756. 'ssh2': 'php5-ssh2',
  2757. 'suhosin5_ext': 'suhosin.so',
  2758. 'suhosin5_repo': 'https://github.com/sektioneins/suhosin',
  2759. 'suhosin7_ext': 'suhosin7.so',
  2760. 'suhosin7_repo': 'https://github.com/sektioneins/suhosin7',
  2761. 'svn': 'php5-svn',
  2762. 'sybase': 'php5-sybase',
  2763. 'tcpdf': 'php-tcpdf',
  2764. 'temp_dir': '/tmp',
  2765. 'tidy': 'php5-tidy',
  2766. 'uuid': 'php-uuid',
  2767. 'xcache': 'php5-xcache',
  2768. 'xdebug': 'php5-xdebug',
  2769. 'xml': 'php5',
  2770. 'xsl': 'php5-xsl',
  2771. 'zip': 'php5',
  2772. },
  2773. 'fpm': {
  2774. 'conf': '/etc/php5/fpm/php-fpm.conf',
  2775. 'ini': '/etc/php5/fpm/php.ini',
  2776. 'pools': '/etc/php5/fpm/pool.d',
  2777. 'service': 'php5-fpm',
  2778. 'user': 'root',
  2779. 'group': 'root',
  2780. 'defaults': odict([
  2781. ('global', odict([
  2782. ('pid', '/var/run/php5-fpm.pid'),
  2783. ('error_log', '/var/log/php5-fpm.log'),
  2784. ])),
  2785. ('include', '/etc/php5/fpm/pool.d/*.conf'),
  2786. ]),
  2787. },
  2788. 'hhvm': {
  2789. 'conf': '/etc/hhvm/server.ini',
  2790. 'ini': '/etc/hhvm/php.ini',
  2791. 'service': 'hhvm',
  2792. 'defaults': {},
  2793. 'server': odict([
  2794. ('pid', '/var/run/hhvm/pid'),
  2795. ('hhvm.server.port', '9000'),
  2796. ('hhvm.server.type', 'fastcgi'),
  2797. ('hhvm.server.default_document', 'index.php'),
  2798. ('hhvm.log.use_log_file', 'true'),
  2799. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  2800. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  2801. ]),
  2802. 'php': odict([
  2803. ('session.save_handler', 'files'),
  2804. ('session.save_path', '/var/lib/hhvm/sessions'),
  2805. ('session.gc_maxlifetime', '1440'),
  2806. ('hhvm.log.level', 'Warning'),
  2807. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  2808. ('hhvm.log.runtime_error_reporting_level', '8191'),
  2809. ('hhvm.mysql.typed_results', 'false'),
  2810. ]),
  2811. },
  2812. 'cli': {
  2813. 'ini': '/etc/php5/cli/php.ini',
  2814. },
  2815. 'apache2': {
  2816. 'ini': '/etc/php5/apache2/php.ini',
  2817. },
  2818. 'xcache': {
  2819. 'ini': '/etc/php5/mods-available/xcache.ini',
  2820. 'defaults': {},
  2821. },
  2822. },
  2823. 'Gentoo' : {
  2824. 'pkgs': {
  2825. 'adodb': 'dev-php/adodb',
  2826. 'apache2': [{'name': 'dev-lang/php','version': ':' + php_version + '[apache2]'}],
  2827. 'apc': [{'name': 'dev-php/pecl-apcu_bc','uses': '[php_targets_php' + useversion + ']'}],
  2828. 'apcu': [{'name': 'dev-php/pecl-apcu', 'uses': '[php_targets_php' + useversion + ']'}],
  2829. 'bcmath': [{'name': 'dev-lang/php','version': ':' + php_version + '[bcmath]'}],
  2830. 'bz2': [{'name': 'dev-lang/php','version': ':' + php_version + '[bzip2]'}],
  2831. 'cache-lite': 'dev-php/PEAR-Cache_Lite',
  2832. 'cgi': [{'name': 'dev-lang/php','version': ':' + php_version + '[cgi]'}],
  2833. 'cli': [{'name': 'dev-lang/php','version': ':' + php_version + '[cli]'}],
  2834. 'composer': 'dev-php/composer',
  2835. 'composer_bin': 'composer',
  2836. 'console-table': 'dev-php/PEAR-Console_Table',
  2837. 'ctype': [{'name': 'dev-lang/php','version': ':' + php_version + '[ctype]'}],
  2838. 'curl': [{'name': 'dev-lang/php','version': ':' + php_version + '[curl]'}],
  2839. 'ext_conf_path': '/etc/php/fpm-php' + php_version + '/ext',
  2840. 'fileinfo': [{'name': 'dev-lang/php','version': ':' + php_version + '[fileinfo]'}],
  2841. 'filter': [{'name': 'dev-lang/php','version': ':' + php_version + '[filter]'}],
  2842. 'fpm': [{'name': 'dev-lang/php','version': ':' + php_version + '[fpm]'}],
  2843. 'gd': [{'name': 'dev-lang/php','version': ':' + php_version + '[gd]'}],
  2844. 'geoip': [{'name': 'dev-php/pecl-geoip','uses': '[php_targets_php' + useversion + ']'}],
  2845. 'gettext': 'dev-php/PEAR-File_Gettext',
  2846. 'gmp': [{'name': 'dev-lang/php','version': ':' + php_version + '[gmp]'}],
  2847. 'hash': [{'name': 'dev-lang/php','version': ':' + php_version + '[hash]'}],
  2848. 'iconv': [{'name': 'dev-lang/php','version': ':' + php_version + '[iconv]'}],
  2849. 'imagick': [{'name': 'dev-php/pecl-imagick','uses': '[php_targets_php' + useversion + ']'}],
  2850. 'imap': [{'name': 'dev-lang/php','version': ':' + php_version + '[imap]'}],
  2851. 'intl': [{'name': 'dev-lang/php','version': ':' + php_version + '[intl]'}],
  2852. 'json': [{'name': 'dev-lang/php','version': ':' + php_version + '[json]'}],
  2853. 'ldap': [{'name': 'dev-lang/php','version': ':' + php_version + '[ldap]'}],
  2854. 'local_bin': '/usr/local/bin',
  2855. 'auth-sasl': 'dev-php/PEAR-Auth_SASL',
  2856. 'mail': 'dev-php/PHPMailer',
  2857. 'memcache': [{'name': 'dev-php/pecl-memcache','uses': '[php_targets_php' + useversion + ']'}],
  2858. 'memcached': [{'name': 'dev-php/pecl-memcached','uses': '[php_targets_php' + useversion + ']'}],
  2859. 'mcrypt': [{'name': 'dev-php/pecl-mcrypt','uses': '[php_targets_php' + useversion + ']'}],
  2860. 'mongo': [{'name': 'dev-php/pecl-mongo','uses': '[php_targets_php' + useversion + ']'}],
  2861. 'mongodb': [{'name': 'dev-php/pecl-mongodb','uses': '[php_targets_php' + useversion + ']'}],
  2862. 'mysqlnd': [{'name': 'dev-lang/php','version': ':' + php_version + '[mysql]'}],
  2863. 'mysql': [{'name': 'dev-lang/php','version': ':' + php_version + '[mysqli]'}],
  2864. 'net-smtp': 'dev-php/PEAR-Net_SMTP',
  2865. 'net4': 'dev-php/PEAR-Net_IPv4',
  2866. 'net6': 'dev-php/PEAR-Net_IPv6',
  2867. 'oauth': [{'name': 'dev-php/pecl-oauth','uses': '[php_targets_php' + useversion + ']'}],
  2868. 'opcache': [{'name': 'dev-lang/php','version': ':' + php_version + '[opcache]'}],
  2869. 'pear': 'dev-php/pear',
  2870. 'pgsql': [{'name': 'dev-lang/php','version': ':' + php_version + '[postgres]'}],
  2871. 'php': [{'name': 'dev-lang/php','version': ':' + php_version}],
  2872. 'pspell': [{'name': 'dev-lang/php','version': ':' + php_version + '[spell]'}],
  2873. 'redis': [{'name': 'dev-php/pecl-redis','uses': '[php_targets_php' + useversion + ']'}],
  2874. 'session': [{'name': 'dev-lang/php','version': ':' + php_version + '[session]'}],
  2875. 'snmp': [{'name': 'dev-lang/php','version': ':' + php_version + '[snmp]'}],
  2876. 'soap': [{'name': 'dev-lang/php','version': ':' + php_version + '[soap]'}],
  2877. 'ssh2': [{'name': 'dev-php/pecl-ssh2','uses': '[php_targets_php' + useversion + ']'}],
  2878. 'sqlite': [{'name': 'dev-lang/php','version': ':' + php_version + '[sqlite]'}],
  2879. 'tcpdf': 'dev-php/tcpdf',
  2880. 'temp_dir': '/tmp',
  2881. 'tidy': [{'name': 'dev-lang/php','version': ':' + php_version + '[tidy]'}],
  2882. 'tokenizer': [{'name': 'dev-lang/php','version': ':' + php_version + '[tokenizer]'}],
  2883. 'uuid': [{'name': 'dev-php/pecl-uuid','uses': '[php_targets_php' + useversion + ']'}],
  2884. 'xdebug': [{'name': 'dev-php/xdebug','uses': '[php_targets_php' + useversion + ']'}],
  2885. 'xml': [{'name': 'dev-lang/php','version': ':' + php_version + '[xml]'}],
  2886. 'xmlwriter': [{'name': 'dev-lang/php','version': ':' + php_version + '[xmlwriter]'}],
  2887. 'xsl': [{'name': 'dev-lang/php','version': ':' + php_version + '[xslt]'}],
  2888. 'zip': [{'name': 'dev-lang/php','version': ':' + php_version + '[zip]'}],
  2889. },
  2890. 'fpm': {
  2891. 'conf': '/etc/php/fpm-php' + php_version + '/php-fpm.conf',
  2892. 'ini': '/etc/php/fpm-php' + php_version + '/php.ini',
  2893. 'pools': '/etc/php/fpm-php' + php_version + '/fpm.d',
  2894. 'service': 'php-fpm',
  2895. 'user': 'root',
  2896. 'group': 'root',
  2897. 'defaults': odict([
  2898. ('global', odict([
  2899. ('pid', '/var/run/php-fpm-php' + php_version + '.pid'),
  2900. ('error_log', '/var/log/php' + php_version + '-fpm.log'),
  2901. ])),
  2902. ('include', '/etc/php/fpm-php' + php_version + '/fpm.d/*.conf'),
  2903. ]),
  2904. },
  2905. 'cli': {
  2906. 'ini': '/etc/php/cli-php' + php_version + '/php.ini',
  2907. },
  2908. 'apache2': {
  2909. 'ini': '/etc/php/apache2-php' + php_version + '/php.ini',
  2910. },
  2911. },
  2912. 'RedHat': {
  2913. 'pkgs': {
  2914. 'adodb': 'php-adodb',
  2915. 'apc': 'php-pecl-apc',
  2916. 'apcu': rh_prefix + 'php-pecl-apcu',
  2917. 'bcmath': rh_prefix + 'php-bcmath',
  2918. 'build_pkgs': ['openssl-devel', 'gcc'],
  2919. 'cache-lite': 'php-pear-Cache-Lite',
  2920. 'cgi': rh_prefix + 'php-cgi',
  2921. 'cli': rh_prefix + 'php-cli',
  2922. 'composer': 'composer',
  2923. 'composer_bin': 'composer',
  2924. 'console-table': 'php-pear-Console-Table',
  2925. 'curl': [rh_prefix + 'php-common', 'curl'],
  2926. 'dba': [rh_prefix + 'php-dba', 'dba'],
  2927. 'dev': rh_prefix + 'php-devel',
  2928. 'ext_conf_path': '/etc/' + path_suffix + 'php.d',
  2929. 'fpm': rh_prefix + 'php-fpm',
  2930. 'gd': rh_prefix + 'php-gd',
  2931. 'geoip': sclo_prefix + 'php-pecl-geoip',
  2932. 'geshi': 'php-geshi',
  2933. 'gettext': 'php-php-gettext',
  2934. 'http': sclo_prefix + 'php-pecl-http',
  2935. 'imagick': sclo_prefix + 'php-pecl-imagick',
  2936. 'imap': sclo_prefix + 'php-imap',
  2937. 'intl': rh_prefix + 'php-intl',
  2938. 'json': rh_prefix + 'php-common',
  2939. 'ldap': rh_prefix + 'php-ldap',
  2940. 'local_bin': '/usr/local/bin',
  2941. 'auth-sasl': 'php-pear-Auth-SASL',
  2942. 'mail': 'php-pear-Mail',
  2943. 'mbstring': rh_prefix + 'php-mbstring',
  2944. 'mcrypt': sclo_prefix + 'php-mcrypt',
  2945. 'memcache': 'php-pecl-memcache',
  2946. 'memcached': sclo_prefix + 'php-pecl-memcached',
  2947. 'mysql': 'php-mysql',
  2948. 'mysqlnd': rh_prefix + 'php-mysqlnd',
  2949. 'net-smtp': 'php-pear-Net-SMTP',
  2950. 'net4': 'php-pear-Net-IPv4',
  2951. 'oauth': 'php-pecl-oauth',
  2952. 'opcache': rh_prefix + 'php-opcache' if salt['pillar.get']('php:use_scl_repo', False) else 'php-pecl-zendopcache',
  2953. 'pear': rh_prefix + 'php-pear',
  2954. 'pgsql': rh_prefix + 'php-pgsql',
  2955. 'php': rh_prefix + 'php',
  2956. 'pspell': rh_prefix + 'php-pspell',
  2957. 'redis': sclo_prefix + 'php-pecl-redis',
  2958. 'seclib': 'php-phpseclib',
  2959. 'snmp': rh_prefix + 'php-snmp',
  2960. 'soap': rh_prefix + 'php-soap',
  2961. 'sqlite': rh_prefix + 'php-pdo',
  2962. 'ssh2': sclo_prefix + 'php-pecl-ssh2',
  2963. 'suhosin5_ext': 'suhosin.so',
  2964. 'suhosin5_repo': 'https://github.com/sektioneins/suhosin',
  2965. 'suhosin7_ext': 'suhosin7.so',
  2966. 'suhosin7_repo': 'https://github.com/sektioneins/suhosin7',
  2967. 'tcpdf': 'php-tcpdf',
  2968. 'temp_dir': '/tmp',
  2969. 'tidy': sclo_prefix + 'php-tidy',
  2970. 'uuid': sclo_prefix + 'php-pecl-uuid',
  2971. 'xcache': 'php-xcache',
  2972. 'xdebug': sclo_prefix + 'php-pecl-xdebug',
  2973. 'xml': [rh_prefix + 'php-xml', rh_prefix + 'php-xmlrpc'],
  2974. 'xsl': rh_prefix + 'php-xml',
  2975. 'zip': rh_prefix + 'php',
  2976. },
  2977. 'fpm': {
  2978. 'conf': '/etc/' + path_suffix + 'php-fpm.conf',
  2979. 'ini': '/etc/' + path_suffix + 'php.ini',
  2980. 'pools': '/etc/' + path_suffix + 'php-fpm.d',
  2981. 'service': rh_prefix + 'php-fpm',
  2982. 'user': 'root',
  2983. 'group': 'root',
  2984. 'defaults': {
  2985. 'global': {
  2986. 'pid': '/var/' + path_suffix + 'run/php-fpm/php-fpm.pid',
  2987. 'error_log': '/var/' + path_suffix + 'log/php-fpm/error.log',
  2988. },
  2989. 'include': '/etc/' + path_suffix + 'php-fpm.d/*.conf',
  2990. },
  2991. },
  2992. 'cli': {
  2993. 'ini': '/etc/' + path_suffix + 'php.ini',
  2994. },
  2995. 'xcache': {
  2996. 'ini': '/etc/' + path_suffix + 'php.d/xcache.ini',
  2997. },
  2998. },
  2999. 'Suse': {
  3000. 'pkgs': {
  3001. 'adodb': 'php5-dba',
  3002. 'apache2': 'apache2-mod_php5',
  3003. 'cli': 'php5',
  3004. 'curl': 'php5-curl',
  3005. 'fpm': 'php5-fpm',
  3006. 'gd': 'php5-gd',
  3007. 'imap': 'php5-imap',
  3008. 'intl': 'php5-intl',
  3009. 'json': 'php5-json',
  3010. 'ldap': 'php5-ldap',
  3011. 'mbstring': 'php5-mbstring',
  3012. 'mcrypt': 'php5-mcrypt',
  3013. 'mysql': 'php5-mysql',
  3014. 'oauth': 'php5-oauth',
  3015. 'pear': 'php5-pear',
  3016. 'pgsql': 'php5-pgsql',
  3017. 'php': 'php5',
  3018. 'snmp': 'php5-snmp',
  3019. 'soap': 'php5-soap',
  3020. 'sqlite': 'php5-sqlite',
  3021. 'suhosin': 'php5-suhosin',
  3022. 'xml': ['php5-xmlreader','php5-xmlwriter','php5-xmlrpc'],
  3023. 'zip': 'php5-zip',
  3024. },
  3025. 'fpm': {
  3026. 'conf': '/etc/php-fpm.conf',
  3027. 'ini': '/etc/php.ini',
  3028. 'pools': '/etc/php-fpm.d',
  3029. 'service': 'php-fpm',
  3030. 'user': 'root',
  3031. 'group': 'root',
  3032. 'defaults': {
  3033. 'global': {
  3034. 'pid': '/var/run/php-fpm/php-fpm.pid',
  3035. 'error_log': '/var/log/php-fpm/error.log',
  3036. },
  3037. 'include': '/etc/php-fpm.d/*.conf',
  3038. },
  3039. },
  3040. 'cli': {
  3041. 'ini': '/etc/php.ini',
  3042. },
  3043. },
  3044. 'Arch': {
  3045. 'pkgs': {
  3046. 'apc': 'php-apcu',
  3047. 'apcu': 'php-apcu-bc',
  3048. 'cgi': 'php-cgi',
  3049. 'cli': 'php',
  3050. 'composer_bin': 'composer',
  3051. 'curl': 'curl',
  3052. 'fpm': 'php-fpm',
  3053. 'gd': 'php-gd',
  3054. 'geoip': 'php-geoip',
  3055. 'imap': 'php-imap',
  3056. 'intl': 'php-intl',
  3057. 'local_bin': '/usr/local/bin',
  3058. 'mcrypt': 'php-mcrypt',
  3059. 'memcache': 'php-memcache',
  3060. 'memcached': 'php-memcached',
  3061. 'pgsql': 'php-pgsql',
  3062. 'php': 'php',
  3063. 'pspell': 'php-pspell',
  3064. 'snmp': 'php-snmp',
  3065. 'sqlite': 'php-sqlite',
  3066. 'temp_dir': '/tmp',
  3067. 'tidy': 'php-tidy',
  3068. 'xcache': 'php-xcache',
  3069. 'xdebug': 'xdebug',
  3070. 'xsl': 'php-xsl',
  3071. },
  3072. 'fpm': {
  3073. 'conf': '/etc/php/php-fpm.conf',
  3074. 'ini': '/etc/php/php.ini',
  3075. 'pools': '/etc/php/fpm.d',
  3076. 'service': 'php-fpm',
  3077. 'user': 'root',
  3078. 'group': 'root',
  3079. 'defaults': {
  3080. 'global': {
  3081. 'pid': '/run/php-fpm/php-fpm.pid',
  3082. 'error_log': 'log/php-fpm.log',
  3083. },
  3084. 'include': '/etc/php/fpm.d/*.conf',
  3085. },
  3086. },
  3087. 'cli': {
  3088. 'ini': '/etc/php/php-cli.ini',
  3089. },
  3090. 'xcache': {
  3091. 'ini': '/etc/php/conf.d/xcache.ini',
  3092. },
  3093. },
  3094. 'FreeBSD': {
  3095. 'apache2': {
  3096. 'ini': '/usr/local/etc/php.ini',
  3097. 'module_config': '/usr/local/etc/apache24/modules.d/050_mod_php.conf',
  3098. 'name': 'apache24',
  3099. },
  3100. 'cli': {
  3101. 'ini': '/usr/local/etc/php.ini'
  3102. },
  3103. 'pkgs': {
  3104. 'apache2': 'mod_php' + freebsd_php_version,
  3105. 'composer_bin': 'composer',
  3106. 'cli': 'php' + freebsd_php_version,
  3107. 'ctype': 'php' + freebsd_php_version + '-ctype',
  3108. 'curl': 'php' + freebsd_php_version + '-curl',
  3109. 'dom': 'php' + freebsd_php_version + '-dom',
  3110. 'filter': 'php' + freebsd_php_version + '-filter',
  3111. 'fileinfo': 'php' + freebsd_php_version + '-fileinfo',
  3112. 'fpm': 'php' + freebsd_php_version,
  3113. 'gd': 'php' + freebsd_php_version + '-gd',
  3114. 'hash': 'php' + freebsd_php_version + '-hash',
  3115. 'iconv': 'php' + freebsd_php_version + '-iconv',
  3116. 'intl': 'php' + freebsd_php_version + '-intl',
  3117. 'json': 'php' + freebsd_php_version + '-json',
  3118. 'local_bin': '/usr/local/bin',
  3119. 'memcached': 'php' + freebsd_php_version + '-pecl-memcached',
  3120. 'mbstring': 'php' + freebsd_php_version + '-mbstring',
  3121. 'mcrypt': 'php' + freebsd_php_version + '-mcrypt',
  3122. 'mysql': 'php' + freebsd_php_version + '-mysqli',
  3123. 'opcache': 'php' + freebsd_php_version + '-opcache',
  3124. 'openssl': 'php' + freebsd_php_version + '-openssl',
  3125. 'pdo': 'php' + freebsd_php_version + '-pdo',
  3126. 'pdo_mysql': 'php' + freebsd_php_version + '-pdo_mysql',
  3127. 'pear': 'php' + freebsd_php_version + '-pear',
  3128. 'php': 'php' + freebsd_php_version,
  3129. 'phar': 'php' + freebsd_php_version + '-phar',
  3130. 'posix': 'php' + freebsd_php_version + '-posix',
  3131. 'session': 'php' + freebsd_php_version + '-session',
  3132. 'simplexml': 'php' + freebsd_php_version + '-simplexml',
  3133. 'snmp': 'php' + freebsd_php_version + '-snmp',
  3134. 'temp_dir': '/tmp',
  3135. 'tokenizer': 'php' + freebsd_php_version + '-tokenizer',
  3136. 'xdebug': 'php' + freebsd_php_version + '-pecl-xdebug',
  3137. 'xml': 'php' + freebsd_php_version + '-xml',
  3138. 'xmlwriter': 'php' + freebsd_php_version + '-xmlwriter',
  3139. 'zip': 'php' + freebsd_php_version + '-zip',
  3140. },
  3141. 'fpm': {
  3142. 'conf': '/usr/local/etc/php-fpm.conf',
  3143. 'ini': '/usr/local/etc/php.ini',
  3144. 'pools': '/usr/local/etc/php-fpm.d',
  3145. 'service': 'php-fpm',
  3146. 'user': 'root',
  3147. 'group': 'wheel',
  3148. 'defaults': {
  3149. 'global': {
  3150. 'pid': 'run/php-fpm.pid',
  3151. 'error_log': 'log/php-fpm.log',
  3152. },
  3153. 'include': '/usr/local/etc/php-fpm.d/*.conf',
  3154. },
  3155. },
  3156. },
  3157. }),
  3158. 'fpm': {
  3159. 'service': {
  3160. 'enabled': True,
  3161. 'opts': {},
  3162. },
  3163. 'config': {
  3164. 'ini': {
  3165. 'opts': {},
  3166. 'settings': {},
  3167. },
  3168. 'conf': {
  3169. 'opts': {},
  3170. 'settings': {},
  3171. },
  3172. },
  3173. 'pools': {
  3174. 'default.conf': {
  3175. 'enabled': False,
  3176. 'opts': {},
  3177. },
  3178. },
  3179. },
  3180. 'hhvm': {
  3181. 'service': {
  3182. 'enabled': True,
  3183. 'opts': {},
  3184. },
  3185. 'config': {
  3186. 'server': {
  3187. 'opts': {},
  3188. 'settings': {},
  3189. },
  3190. 'php': {
  3191. 'opts': {},
  3192. 'settings': {},
  3193. },
  3194. },
  3195. },
  3196. 'cli': {
  3197. 'ini': {
  3198. 'opts': {},
  3199. 'settings': {},
  3200. }
  3201. },
  3202. 'apache2': {
  3203. 'ini': {
  3204. 'opts': {},
  3205. 'settings': {},
  3206. }
  3207. },
  3208. 'xcache': {
  3209. 'ini': {
  3210. 'defaults': {
  3211. 'xcache-common': {
  3212. 'extension': 'xcache.so',
  3213. },
  3214. 'xcache.admin': {
  3215. 'xcache.admin.enable_auth': 'On',
  3216. },
  3217. 'xcache': {
  3218. 'xcache.shm_scheme': '"mmap"',
  3219. 'xcache.size': '60M',
  3220. 'xcache.count': '1',
  3221. 'xcache.slots': '8K',
  3222. 'xcache.ttl': '0',
  3223. 'xcache.gc_interval': '0',
  3224. 'xcache.var_size': '4M',
  3225. 'xcache.var_count': '1',
  3226. 'xcache.var_slots': '8K',
  3227. 'xcache.var_ttl': '0',
  3228. 'xcache.var_maxttl': '0',
  3229. 'xcache.var_gc_interval': '300',
  3230. 'xcache.var_namespace_mode': '0',
  3231. 'xcache.var_namespace': '""',
  3232. 'xcache.readonly_protection': 'Off',
  3233. 'xcache.mmap_path': '"/dev/zero"',
  3234. 'xcache.coredump_directory': '""',
  3235. 'xcache.coredump_type': '0',
  3236. 'xcache.disable_on_crash': 'Off',
  3237. 'xcache.experimental': 'Off',
  3238. 'xcache.cacher': 'On',
  3239. 'xcache.stat': 'On',
  3240. 'xcache.optimizer': 'Off',
  3241. },
  3242. 'xcache.coverager': {
  3243. 'xcache.coverager': 'Off',
  3244. 'xcache.coverager_autostart': 'On',
  3245. 'xcache.coveragedump_directory': '""',
  3246. },
  3247. },
  3248. 'opts': {},
  3249. 'settings': {},
  3250. }
  3251. },
  3252. 'ini': {
  3253. 'defaults': {
  3254. 'PHP': {
  3255. 'engine': 'On',
  3256. 'allow_url_fopen': 'On',
  3257. 'allow_url_include': 'Off',
  3258. 'asp_tags': 'Off',
  3259. 'auto_globals_jit': 'On',
  3260. 'default_mimetype': '"text/html"',
  3261. 'default_socket_timeout': 60,
  3262. 'disable_functions': ['pcntl_alarm','pcntl_fork','pcntl_waitpid','pcntl_wait','pcntl_wifexited','pcntl_wifstopped','pcntl_wifsignaled',
  3263. 'pcntl_wexitstatus','pcntl_wtermsig','pcntl_wstopsig','pcntl_signal','pcntl_signal_dispatch','pcntl_get_last_error','pcntl_strerror',
  3264. 'pcntl_sigprocmask','pcntl_sigwaitinfo','pcntl_sigtimedwait','pcntl_exec','pcntl_getpriority','pcntl_setpriority'],
  3265. 'display_errors': 'Off',
  3266. 'display_startup_errors': 'Off',
  3267. 'enable_dl': 'Off',
  3268. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  3269. 'expose_php': 'On',
  3270. 'file_uploads': 'On',
  3271. 'html_errors': 'On',
  3272. 'ignore_repeated_errors': 'Off',
  3273. 'ignore_repeated_source': 'Off',
  3274. 'implicit_flush': 'Off',
  3275. 'log_errors': 'On',
  3276. 'log_errors_max_len': 1024,
  3277. 'max_execution_time': 30,
  3278. 'max_file_uploads': 20,
  3279. 'max_input_nesting_level': 64,
  3280. 'max_input_time': 60,
  3281. 'max_input_vars': 1000,
  3282. 'memory_limit': '128M',
  3283. 'output_buffering': 4096,
  3284. 'post_max_size': '8M',
  3285. 'precision': 14,
  3286. 'register_argc_argv': 'Off',
  3287. 'report_memleaks': 'On',
  3288. 'request_order': 'GP',
  3289. 'serialize_precision': 17,
  3290. 'short_open_tag': 'Off',
  3291. 'track_errors': 'Off',
  3292. 'upload_max_filesize': '2M',
  3293. 'variables_order': 'GPCS',
  3294. 'zend.enable_gc': 'On',
  3295. 'zlib.output_compression': 'Off',
  3296. },
  3297. 'CLI Server': {
  3298. 'cli_server.color': 'On'
  3299. },
  3300. 'Date': {
  3301. 'date.timezone': 'America/New_York'
  3302. },
  3303. 'Pdo_mysql': {
  3304. 'pdo_mysql.cache_size': 2000
  3305. },
  3306. 'mail function': {
  3307. 'SMTP': 'localhost',
  3308. 'mail.add_x_header': 'On'
  3309. },
  3310. 'SQL': {
  3311. 'sql.safe_mode': 'Off'
  3312. },
  3313. 'ODBC': {
  3314. 'odbc.allow_persistent': 'On',
  3315. 'odbc.check_persistent': 'On',
  3316. 'odbc.max_persistent': '-1',
  3317. 'odbc.max_links': '-1',
  3318. 'odbc.defaultlrl': 4096,
  3319. 'odbc.defaultbinmode': 1
  3320. },
  3321. 'Interbase': {
  3322. 'ibase.allow_persistent': 1,
  3323. 'ibase.max_persistent': -1,
  3324. 'ibase.max_links': -1,
  3325. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  3326. 'ibase.dateformat': '"%Y-%m-%d"',
  3327. 'ibase.timeformat': '"%H:%M:%S"'
  3328. },
  3329. 'MySQL': {
  3330. 'mysql.allow_local_infile': 'On',
  3331. 'mysql.allow_persistent': 'On',
  3332. 'mysql.cache_size': '2000',
  3333. 'mysql.max_persistent': -1,
  3334. 'mysql.max_links': -1,
  3335. 'mysql.connect_timeout': 60,
  3336. 'mysql.trace_mode': 'Off'
  3337. },
  3338. 'MySQLi': {
  3339. 'mysqli.max_persistent': -1,
  3340. 'mysqli.allow_persistent': 'On',
  3341. 'mysqli.max_links': -1,
  3342. 'mysqli.cache_size': 2000,
  3343. 'mysqli.default_port': 3306,
  3344. 'mysqli.reconnect': 'Off'
  3345. },
  3346. 'mysqlnd': {
  3347. 'mysqlnd.collect_statistics': 'On',
  3348. 'mysqlnd.collect_memory_statistics': 'Off'
  3349. },
  3350. 'PostgreSQL': {
  3351. 'pgsql.allow_persistent': 'On',
  3352. 'pgsql.auto_reset_persistent': 'Off',
  3353. 'pgsql.max_persistent': -1,
  3354. 'pgsql.max_links': -1,
  3355. 'pgsql.ignore_notice': 0,
  3356. 'pgsql.log_notice': 0
  3357. },
  3358. 'Sybase-CT': {
  3359. 'sybct.allow_persistent': 'On',
  3360. 'sybct.max_persistent': -1,
  3361. 'sybct.max_links': -1,
  3362. 'sybct.min_server_severity': 10,
  3363. 'sybct.min_client_severity': 10
  3364. },
  3365. 'bcmath': {
  3366. 'bcmath.scale': 0
  3367. },
  3368. 'Session': {
  3369. 'session.save_handler': 'files',
  3370. 'session.use_strict_mode': 0,
  3371. 'session.use_cookies': 1,
  3372. 'session.use_only_cookies': 1,
  3373. 'session.name': 'PHPSESSID',
  3374. 'session.auto_start': 0,
  3375. 'session.cookie_lifetime': 0,
  3376. 'session.cookie_path': '/',
  3377. 'session.serialize_handler': 'php',
  3378. 'session.gc_probability': 0,
  3379. 'session.gc_divisor': 1000,
  3380. 'session.gc_maxlifetime': 1440,
  3381. 'session.bug_compat_42': 'Off',
  3382. 'session.bug_compat_warn': 'Off',
  3383. 'session.cache_limiter': 'nocache',
  3384. 'session.cache_expire': '180',
  3385. 'session.use_trans_sid': 0,
  3386. 'session.hash_function': 0,
  3387. 'session.hash_bits_per_character': 5,
  3388. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  3389. },
  3390. 'MSSQL': {
  3391. 'mssql.allow_persistent': 'On',
  3392. 'mssql.max_persistent': -1,
  3393. 'mssql.max_links': -1,
  3394. 'mssql.min_error_severity': 10,
  3395. 'mssql.min_message_severity': 10,
  3396. 'mssql.compatibility_mode': 'Off',
  3397. 'mssql.secure_connection': 'Off'
  3398. },
  3399. 'Tidy': {
  3400. 'tidy.clean_output': 'Off'
  3401. },
  3402. 'soap': {
  3403. 'soap.wsdl_cache_enabled': 1,
  3404. 'soap.wsdl_cache_dir': '"/tmp"',
  3405. 'soap.wsdl_cache_ttl': 86400,
  3406. 'soap.wsdl_cache_limit': 5
  3407. },
  3408. 'ldap': {
  3409. 'ldap.max_links': -1
  3410. },
  3411. },
  3412. },
  3413. }, merge=True) %}
  3414. {%- endif %}