Saltstack Official PHP Formula
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

3480 lines
167KB

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