Saltstack Official PHP Formula
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1526 lines
57KB

  1. {% if salt['pillar.get']('php:ng:version')|string == '7.0' %}
  2. {% set php = salt['pillar.get']('php:ng', {
  3. 'lookup': salt['grains.filter_by']({
  4. 'Debian': {
  5. 'pkgs': {
  6. 'apcu': 'php-apcu',
  7. 'php': 'php7.0',
  8. 'cgi': 'php7.0-cgi',
  9. 'cli': 'php7.0-cli',
  10. 'apache2': 'libapache2-mod-php7.0',
  11. 'curl': 'php7.0-curl',
  12. 'fpm': 'php7.0-fpm',
  13. 'hhvm': 'hhvm',
  14. 'gd': 'php7.0-gd',
  15. 'gmp': 'php7.0-gmp',
  16. 'intl': 'php7.0-intl',
  17. 'mbstring': 'php7.0-mbstring',
  18. 'mcrypt': 'php7.0-mcrypt',
  19. 'mysql': 'php7.0-mysql',
  20. 'pspell': 'php7.0-pspell',
  21. 'redis': 'php7.0-redis',
  22. 'snmp': 'php7.0-snmp',
  23. 'soap': 'php7.0-soap',
  24. 'sqlite': 'php7.0-sqlite3',
  25. 'xdebug': 'php7.0-xdebug',
  26. 'xsl': 'php7.0-xsl',
  27. 'xml': 'php7.0-xml',
  28. 'zip': 'php7.0-zip',
  29. 'imap': 'php7.0-imap',
  30. 'pgsql': 'php7.0-pgsql',
  31. 'ldap': 'php7.0-ldap',
  32. 'json': 'php7.0-json',
  33. 'pear': 'php-pear',
  34. 'net4': 'php-net-ipv4',
  35. 'net6': 'php-net-ipv6'
  36. },
  37. 'fpm': {
  38. 'conf': '/etc/php/7.0/fpm/php-fpm.conf',
  39. 'ini': '/etc/php/7.0/fpm/php.ini',
  40. 'pools': '/etc/php/7.0/fpm/pool.d',
  41. 'service': 'php7.0-fpm',
  42. 'defaults': odict([
  43. ('global', odict([
  44. ('pid', '/var/run/php7.0-fpm.pid'),
  45. ('error_log', '/var/log/php7.0-fpm.log'),
  46. ])),
  47. ('include', '/etc/php/7.0/fpm/pool.d/*.conf'),
  48. ]),
  49. },
  50. 'hhvm': {
  51. 'conf': '/etc/hhvm/server.ini',
  52. 'ini': '/etc/hhvm/php.ini',
  53. 'service': 'hhvm',
  54. 'defaults': {},
  55. 'server': odict([
  56. ('pid', '/var/run/hhvm/pid'),
  57. ('hhvm.server.port', '9000'),
  58. ('hhvm.server.type', 'fastcgi'),
  59. ('hhvm.server.default_document', 'index.php'),
  60. ('hhvm.log.use_log_file', 'true'),
  61. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  62. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  63. ]),
  64. 'php': odict([
  65. ('session.save_handler', 'files'),
  66. ('session.save_path', '/var/lib/hhvm/sessions'),
  67. ('session.gc_maxlifetime', '1440'),
  68. ('hhvm.log.level', 'Warning'),
  69. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  70. ('hhvm.log.runtime_error_reporting_level', '8191'),
  71. ('hhvm.mysql.typed_results', 'false'),
  72. ]),
  73. },
  74. 'cli': {
  75. 'ini': '/etc/php/7.0/cli/php.ini',
  76. },
  77. 'apache2': {
  78. 'ini': '/etc/php/7.0/apache2/php.ini',
  79. },
  80. },
  81. }),
  82. 'fpm': {
  83. 'service': {
  84. 'enabled': True,
  85. 'opts': {},
  86. },
  87. 'config': {
  88. 'ini': {
  89. 'opts': {},
  90. 'settings': {},
  91. },
  92. 'conf': {
  93. 'opts': {},
  94. 'settings': {},
  95. },
  96. },
  97. 'pools': {},
  98. },
  99. 'hhvm': {
  100. 'service': {
  101. 'enabled': True,
  102. 'opts': {},
  103. },
  104. 'config': {
  105. 'server': {
  106. 'opts': {},
  107. 'settings': {},
  108. },
  109. 'php': {
  110. 'opts': {},
  111. 'settings': {},
  112. },
  113. },
  114. },
  115. 'cli': {
  116. 'ini': {
  117. 'opts': {},
  118. 'settings': {},
  119. }
  120. },
  121. 'apache2': {
  122. 'ini': {
  123. 'opts': {},
  124. 'settings': {},
  125. }
  126. },
  127. 'ini': {
  128. 'defaults': {
  129. 'PHP': {
  130. 'engine': 'On',
  131. 'short_open_tag': 'Off',
  132. 'asp_tags': 'Off',
  133. 'precision': 14,
  134. 'output_buffering': 4096,
  135. 'zlib.output_compression': 'Off',
  136. 'implicit_flush': 'Off',
  137. 'serialize_precision': 17,
  138. 'disable_functions': ['pcntl_alarm','pcntl_fork','pcntl_waitpid','pcntl_wait','pcntl_wifexited','pcntl_wifstopped','pcntl_wifsignaled',
  139. 'pcntl_wexitstatus','pcntl_wtermsig','pcntl_wstopsig','pcntl_signal','pcntl_signal_dispatch','pcntl_get_last_error','pcntl_strerror',
  140. 'pcntl_sigprocmask','pcntl_sigwaitinfo','pcntl_sigtimedwait','pcntl_exec','pcntl_getpriority','pcntl_setpriority'],
  141. 'zend.enable_gc': 'On',
  142. 'expose_php': 'On',
  143. 'max_execution_time': 30,
  144. 'max_input_time': 60,
  145. 'max_input_nesting_level': 64,
  146. 'max_input_vars': 1000,
  147. 'memory_limit': '128M',
  148. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  149. 'display_errors': 'Off',
  150. 'display_startup_errors': 'Off',
  151. 'log_errors': 'On',
  152. 'log_errors_max_len': 1024,
  153. 'ignore_repeated_errors': 'Off',
  154. 'ignore_repeated_source': 'Off',
  155. 'report_memleaks': 'On',
  156. 'track_errors': 'Off',
  157. 'html_errors': 'On',
  158. 'variables_order': 'GPCS',
  159. 'request_order': 'GP',
  160. 'register_argc_argv': 'Off',
  161. 'auto_globals_jit': 'On',
  162. 'post_max_size': '8M',
  163. 'default_mimetype': '"text/html"',
  164. 'enable_dl': 'Off',
  165. 'file_uploads': 'On',
  166. 'upload_max_filesize': '2M',
  167. 'max_file_uploads': 20,
  168. 'allow_url_fopen': 'On',
  169. 'allow_url_include': 'Off',
  170. 'default_socket_timeout': 60
  171. },
  172. 'CLI Server': {
  173. 'cli_server.color': 'On'
  174. },
  175. 'Date': {
  176. 'date.timezone': 'America/New_York'
  177. },
  178. 'Pdo_mysql': {
  179. 'pdo_mysql.cache_size': 2000
  180. },
  181. 'mail function': {
  182. 'SMTP': 'localhost',
  183. 'mail.add_x_header': 'On'
  184. },
  185. 'SQL': {
  186. 'sql.safe_mode': 'Off'
  187. },
  188. 'ODBC': {
  189. 'odbc.allow_persistent': 'On',
  190. 'odbc.check_persistent': 'On',
  191. 'odbc.max_persistent': '-1',
  192. 'odbc.max_links': '-1',
  193. 'odbc.defaultlrl': 4096,
  194. 'odbc.defaultbinmode': 1
  195. },
  196. 'Interbase': {
  197. 'ibase.allow_persistent': 1,
  198. 'ibase.max_persistent': -1,
  199. 'ibase.max_links': -1,
  200. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  201. 'ibase.dateformat': '"%Y-%m-%d"',
  202. 'ibase.timeformat': '"%H:%M:%S"'
  203. },
  204. 'MySQL': {
  205. 'mysql.allow_local_infile': 'On',
  206. 'mysql.allow_persistent': 'On',
  207. 'mysql.cache_size': '2000',
  208. 'mysql.max_persistent': -1,
  209. 'mysql.max_links': -1,
  210. 'mysql.connect_timeout': 60,
  211. 'mysql.trace_mode': 'Off'
  212. },
  213. 'MySQLi': {
  214. 'mysqli.max_persistent': -1,
  215. 'mysqli.allow_persistent': 'On',
  216. 'mysqli.max_links': -1,
  217. 'mysqli.cache_size': 2000,
  218. 'mysqli.default_port': 3306,
  219. 'mysqli.reconnect': 'Off'
  220. },
  221. 'mysqlnd': {
  222. 'mysqlnd.collect_statistics': 'On',
  223. 'mysqlnd.collect_memory_statistics': 'Off'
  224. },
  225. 'PostgreSQL': {
  226. 'pgsql.allow_persistent': 'On',
  227. 'pgsql.auto_reset_persistent': 'Off',
  228. 'pgsql.max_persistent': -1,
  229. 'pgsql.max_links': -1,
  230. 'pgsql.ignore_notice': 0,
  231. 'pgsql.log_notice': 0
  232. },
  233. 'Sybase-CT': {
  234. 'sybct.allow_persistent': 'On',
  235. 'sybct.max_persistent': -1,
  236. 'sybct.max_links': -1,
  237. 'sybct.min_server_severity': 10,
  238. 'sybct.min_client_severity': 10
  239. },
  240. 'bcmath': {
  241. 'bcmath.scale': 0
  242. },
  243. 'Session': {
  244. 'session.save_handler': 'files',
  245. 'session.use_strict_mode': 0,
  246. 'session.use_cookies': 1,
  247. 'session.use_only_cookies': 1,
  248. 'session.name': 'PHPSESSID',
  249. 'session.auto_start': 0,
  250. 'session.cookie_lifetime': 0,
  251. 'session.cookie_path': '/',
  252. 'session.serialize_handler': 'php',
  253. 'session.gc_probability': 0,
  254. 'session.gc_divisor': 1000,
  255. 'session.gc_maxlifetime': 1440,
  256. 'session.bug_compat_42': 'Off',
  257. 'session.bug_compat_warn': 'Off',
  258. 'session.cache_limiter': 'nocache',
  259. 'session.cache_expire': '180',
  260. 'session.use_trans_sid': 0,
  261. 'session.hash_function': 0,
  262. 'session.hash_bits_per_character': 5,
  263. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  264. },
  265. 'MSSQL': {
  266. 'mssql.allow_persistent': 'On',
  267. 'mssql.max_persistent': -1,
  268. 'mssql.max_links': -1,
  269. 'mssql.min_error_severity': 10,
  270. 'mssql.min_message_severity': 10,
  271. 'mssql.compatibility_mode': 'Off',
  272. 'mssql.secure_connection': 'Off'
  273. },
  274. 'Tidy': {
  275. 'tidy.clean_output': 'Off'
  276. },
  277. 'soap': {
  278. 'soap.wsdl_cache_enabled': 1,
  279. 'soap.wsdl_cache_dir': '"/tmp"',
  280. 'soap.wsdl_cache_ttl': 86400,
  281. 'soap.wsdl_cache_limit': 5
  282. },
  283. 'ldap': {
  284. 'ldap.max_links': -1
  285. },
  286. },
  287. },
  288. }, merge=True) %}
  289. {% else %}
  290. {% if salt['grains.get']('os') == 'Ubuntu' %}
  291. {% if salt['grains.get']('osrelease')|string >= '16.04' %}
  292. {% set php = salt['pillar.get']('php:ng', {
  293. 'lookup': salt['grains.filter_by']({
  294. 'Ubuntu': {
  295. 'pkgs': {
  296. 'php': 'php',
  297. 'apc': 'php',
  298. 'apcu': 'php-apcu',
  299. 'cgi': 'php-cgi',
  300. 'cli': 'php-cli',
  301. 'oauth': 'php-oauth',
  302. 'apache2': 'libapache2-mod-php',
  303. 'curl': 'php-curl',
  304. 'fpm': 'php-fpm',
  305. 'hhvm': 'hhvm',
  306. 'gd': 'php-gd',
  307. 'gmp': 'php-gmp',
  308. 'geoip': 'php-geoip',
  309. 'intl': 'php-intl',
  310. 'mbstring': 'php-mbstring',
  311. 'mcrypt': 'php-mcrypt',
  312. 'memcache': 'php-memcache',
  313. 'memcached': 'php-memcached',
  314. 'mysql': 'php-mysql',
  315. 'mysqlnd': 'php',
  316. 'pear': 'php-pear',
  317. 'pspell': 'php-pspell',
  318. 'snmp': 'php-snmp',
  319. 'soap': 'php-soap',
  320. 'sqlite': 'php-sqlite3',
  321. 'xcache': 'php',
  322. 'xdebug': 'php-xdebug',
  323. 'xsl': 'php7.0-xsl',
  324. 'xml': 'php-xml',
  325. 'zip': 'php-zip',
  326. 'redis': 'php-redis',
  327. 'imagick': 'php-imagick',
  328. 'suhosin': 'php',
  329. 'imap': 'php-imap',
  330. 'adodb': 'php-adodb',
  331. 'pgsql': 'php-pgsql',
  332. 'ldap': 'php-ldap',
  333. 'json': 'php-json',
  334. 'net4': 'php-net-ipv4',
  335. 'net6': 'php-net-ipv6'
  336. },
  337. 'fpm': {
  338. 'conf': '/etc/php/7.0/fpm/php-fpm.conf',
  339. 'ini': '/etc/php/7.0/fpm/php.ini',
  340. 'pools': '/etc/php/7.0/fpm/pool.d',
  341. 'service': 'php7.0-fpm',
  342. 'defaults': odict([
  343. ('global', odict([
  344. ('pid', '/var/run/php7.0-fpm.pid'),
  345. ('error_log', '/var/log/php7.0-fpm.log'),
  346. ])),
  347. ('include', '/etc/php/7.0/fpm/pool.d/*.conf'),
  348. ]),
  349. },
  350. 'hhvm': {
  351. 'conf': '/etc/hhvm/server.ini',
  352. 'ini': '/etc/hhvm/php.ini',
  353. 'service': 'hhvm',
  354. 'defaults': {},
  355. 'server': odict([
  356. ('pid', '/var/run/hhvm/pid'),
  357. ('hhvm.server.port', '9000'),
  358. ('hhvm.server.type', 'fastcgi'),
  359. ('hhvm.server.default_document', 'index.php'),
  360. ('hhvm.log.use_log_file', 'true'),
  361. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  362. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  363. ]),
  364. 'php': odict([
  365. ('session.save_handler', 'files'),
  366. ('session.save_path', '/var/lib/hhvm/sessions'),
  367. ('session.gc_maxlifetime', '1440'),
  368. ('hhvm.log.level', 'Warning'),
  369. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  370. ('hhvm.log.runtime_error_reporting_level', '8191'),
  371. ('hhvm.mysql.typed_results', 'false'),
  372. ]),
  373. },
  374. 'cli': {
  375. 'ini': '/etc/php/7.0/cli/php.ini',
  376. },
  377. 'apache2': {
  378. 'ini': '/etc/php/7.0/apache2/php.ini',
  379. },
  380. 'xcache': {
  381. 'ini': '/etc/php/7.0/mods-available/xcache.ini',
  382. 'defaults': {},
  383. },
  384. },
  385. }, grain="os"),
  386. 'fpm': {
  387. 'service': {
  388. 'enabled': True,
  389. 'opts': {},
  390. },
  391. 'config': {
  392. 'ini': {
  393. 'opts': {},
  394. 'settings': {},
  395. },
  396. 'conf': {
  397. 'opts': {},
  398. 'settings': {},
  399. },
  400. },
  401. 'pools': {
  402. 'default.conf': {
  403. 'enabled': False,
  404. 'opts': {},
  405. },
  406. },
  407. },
  408. 'hhvm': {
  409. 'service': {
  410. 'enabled': True,
  411. 'opts': {},
  412. },
  413. 'config': {
  414. 'server': {
  415. 'opts': {},
  416. 'settings': {},
  417. },
  418. 'php': {
  419. 'opts': {},
  420. 'settings': {},
  421. },
  422. },
  423. },
  424. 'cli': {
  425. 'ini': {
  426. 'opts': {},
  427. 'settings': {},
  428. }
  429. },
  430. 'apache2': {
  431. 'ini': {
  432. 'opts': {},
  433. 'settings': {},
  434. }
  435. },
  436. 'xcache': {
  437. 'ini': {
  438. 'defaults': {
  439. 'xcache-common': {
  440. 'extension': 'xcache.so',
  441. },
  442. 'xcache.admin': {
  443. 'xcache.admin.enable_auth': 'On',
  444. },
  445. 'xcache': {
  446. 'xcache.shm_scheme': '"mmap"',
  447. 'xcache.size': '60M',
  448. 'xcache.count': '1',
  449. 'xcache.slots': '8K',
  450. 'xcache.ttl': '0',
  451. 'xcache.gc_interval': '0',
  452. 'xcache.var_size': '4M',
  453. 'xcache.var_count': '1',
  454. 'xcache.var_slots': '8K',
  455. 'xcache.var_ttl': '0',
  456. 'xcache.var_maxttl': '0',
  457. 'xcache.var_gc_interval': '300',
  458. 'xcache.var_namespace_mode': '0',
  459. 'xcache.var_namespace': '""',
  460. 'xcache.readonly_protection': 'Off',
  461. 'xcache.mmap_path': '"/dev/zero"',
  462. 'xcache.coredump_directory': '""',
  463. 'xcache.coredump_type': '0',
  464. 'xcache.disable_on_crash': 'Off',
  465. 'xcache.experimental': 'Off',
  466. 'xcache.cacher': 'On',
  467. 'xcache.stat': 'On',
  468. 'xcache.optimizer': 'Off',
  469. },
  470. 'xcache.coverager': {
  471. 'xcache.coverager': 'Off',
  472. 'xcache.coverager_autostart': 'On',
  473. 'xcache.coveragedump_directory': '""',
  474. },
  475. },
  476. 'opts': {},
  477. 'settings': {},
  478. }
  479. },
  480. 'ini': {
  481. 'defaults': {
  482. 'PHP': {
  483. 'engine': 'On',
  484. 'short_open_tag': 'Off',
  485. 'asp_tags': 'Off',
  486. 'precision': 14,
  487. 'output_buffering': 4096,
  488. 'zlib.output_compression': 'Off',
  489. 'implicit_flush': 'Off',
  490. 'serialize_precision': 17,
  491. 'disable_functions': ['pcntl_alarm','pcntl_fork','pcntl_waitpid','pcntl_wait','pcntl_wifexited','pcntl_wifstopped','pcntl_wifsignaled',
  492. 'pcntl_wexitstatus','pcntl_wtermsig','pcntl_wstopsig','pcntl_signal','pcntl_signal_dispatch','pcntl_get_last_error','pcntl_strerror',
  493. 'pcntl_sigprocmask','pcntl_sigwaitinfo','pcntl_sigtimedwait','pcntl_exec','pcntl_getpriority','pcntl_setpriority'],
  494. 'zend.enable_gc': 'On',
  495. 'expose_php': 'On',
  496. 'max_execution_time': 30,
  497. 'max_input_time': 60,
  498. 'max_input_nesting_level': 64,
  499. 'max_input_vars': 1000,
  500. 'memory_limit': '128M',
  501. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  502. 'display_errors': 'Off',
  503. 'display_startup_errors': 'Off',
  504. 'log_errors': 'On',
  505. 'log_errors_max_len': 1024,
  506. 'ignore_repeated_errors': 'Off',
  507. 'ignore_repeated_source': 'Off',
  508. 'report_memleaks': 'On',
  509. 'track_errors': 'Off',
  510. 'html_errors': 'On',
  511. 'variables_order': 'GPCS',
  512. 'request_order': 'GP',
  513. 'register_argc_argv': 'Off',
  514. 'auto_globals_jit': 'On',
  515. 'post_max_size': '8M',
  516. 'default_mimetype': '"text/html"',
  517. 'enable_dl': 'Off',
  518. 'file_uploads': 'On',
  519. 'upload_max_filesize': '2M',
  520. 'max_file_uploads': 20,
  521. 'allow_url_fopen': 'On',
  522. 'allow_url_include': 'Off',
  523. 'default_socket_timeout': 60
  524. },
  525. 'CLI Server': {
  526. 'cli_server.color': 'On'
  527. },
  528. 'Date': {
  529. 'date.timezone': 'America/New_York'
  530. },
  531. 'Pdo_mysql': {
  532. 'pdo_mysql.cache_size': 2000
  533. },
  534. 'mail function': {
  535. 'SMTP': 'localhost',
  536. 'mail.add_x_header': 'On'
  537. },
  538. 'SQL': {
  539. 'sql.safe_mode': 'Off'
  540. },
  541. 'ODBC': {
  542. 'odbc.allow_persistent': 'On',
  543. 'odbc.check_persistent': 'On',
  544. 'odbc.max_persistent': '-1',
  545. 'odbc.max_links': '-1',
  546. 'odbc.defaultlrl': 4096,
  547. 'odbc.defaultbinmode': 1
  548. },
  549. 'Interbase': {
  550. 'ibase.allow_persistent': 1,
  551. 'ibase.max_persistent': -1,
  552. 'ibase.max_links': -1,
  553. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  554. 'ibase.dateformat': '"%Y-%m-%d"',
  555. 'ibase.timeformat': '"%H:%M:%S"'
  556. },
  557. 'MySQL': {
  558. 'mysql.allow_local_infile': 'On',
  559. 'mysql.allow_persistent': 'On',
  560. 'mysql.cache_size': '2000',
  561. 'mysql.max_persistent': -1,
  562. 'mysql.max_links': -1,
  563. 'mysql.connect_timeout': 60,
  564. 'mysql.trace_mode': 'Off'
  565. },
  566. 'MySQLi': {
  567. 'mysqli.max_persistent': -1,
  568. 'mysqli.allow_persistent': 'On',
  569. 'mysqli.max_links': -1,
  570. 'mysqli.cache_size': 2000,
  571. 'mysqli.default_port': 3306,
  572. 'mysqli.reconnect': 'Off'
  573. },
  574. 'mysqlnd': {
  575. 'mysqlnd.collect_statistics': 'On',
  576. 'mysqlnd.collect_memory_statistics': 'Off'
  577. },
  578. 'PostgreSQL': {
  579. 'pgsql.allow_persistent': 'On',
  580. 'pgsql.auto_reset_persistent': 'Off',
  581. 'pgsql.max_persistent': -1,
  582. 'pgsql.max_links': -1,
  583. 'pgsql.ignore_notice': 0,
  584. 'pgsql.log_notice': 0
  585. },
  586. 'Sybase-CT': {
  587. 'sybct.allow_persistent': 'On',
  588. 'sybct.max_persistent': -1,
  589. 'sybct.max_links': -1,
  590. 'sybct.min_server_severity': 10,
  591. 'sybct.min_client_severity': 10
  592. },
  593. 'bcmath': {
  594. 'bcmath.scale': 0
  595. },
  596. 'Session': {
  597. 'session.save_handler': 'files',
  598. 'session.use_strict_mode': 0,
  599. 'session.use_cookies': 1,
  600. 'session.use_only_cookies': 1,
  601. 'session.name': 'PHPSESSID',
  602. 'session.auto_start': 0,
  603. 'session.cookie_lifetime': 0,
  604. 'session.cookie_path': '/',
  605. 'session.serialize_handler': 'php',
  606. 'session.gc_probability': 0,
  607. 'session.gc_divisor': 1000,
  608. 'session.gc_maxlifetime': 1440,
  609. 'session.bug_compat_42': 'Off',
  610. 'session.bug_compat_warn': 'Off',
  611. 'session.cache_limiter': 'nocache',
  612. 'session.cache_expire': '180',
  613. 'session.use_trans_sid': 0,
  614. 'session.hash_function': 0,
  615. 'session.hash_bits_per_character': 5,
  616. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  617. },
  618. 'MSSQL': {
  619. 'mssql.allow_persistent': 'On',
  620. 'mssql.max_persistent': -1,
  621. 'mssql.max_links': -1,
  622. 'mssql.min_error_severity': 10,
  623. 'mssql.min_message_severity': 10,
  624. 'mssql.compatibility_mode': 'Off',
  625. 'mssql.secure_connection': 'Off'
  626. },
  627. 'Tidy': {
  628. 'tidy.clean_output': 'Off'
  629. },
  630. 'soap': {
  631. 'soap.wsdl_cache_enabled': 1,
  632. 'soap.wsdl_cache_dir': '"/tmp"',
  633. 'soap.wsdl_cache_ttl': 86400,
  634. 'soap.wsdl_cache_limit': 5
  635. },
  636. 'ldap': {
  637. 'ldap.max_links': -1
  638. },
  639. },
  640. },
  641. }, merge=True) %}
  642. {% else %}
  643. {% set php = salt['pillar.get']('php:ng', {
  644. 'lookup': salt['grains.filter_by']({
  645. 'Ubuntu': {
  646. 'pkgs': {
  647. 'php': 'php5',
  648. 'apc': 'php-apc',
  649. 'apcu': 'php5-apcu',
  650. 'cache-lite': 'php-cache-lite',
  651. 'console-table': 'php-console-table',
  652. 'cgi': 'php5-cgi',
  653. 'cli': 'php5-cli',
  654. 'dev': ['php5-dev','build-essential'],
  655. 'oauth': 'php5-oauth',
  656. 'apache2': 'libapache2-mod-php5',
  657. 'curl': 'php5-curl',
  658. 'gearman': 'php5-gearman',
  659. 'gettext': 'php-gettext',
  660. 'geshi': 'php-geshi',
  661. 'ffmpeg': ['php5-ffmpeg', 'ffmpeg'],
  662. 'fpm': 'php5-fpm',
  663. 'hhvm': 'hhvm',
  664. 'gd': 'php5-gd',
  665. 'gmp': 'php5-gmp',
  666. 'geoip': 'php5-geoip',
  667. 'intl': 'php5-intl',
  668. 'mbstring': 'php5',
  669. 'mcrypt': 'php5-mcrypt',
  670. 'memcache': 'php5-memcache',
  671. 'memcached': 'php5-memcached',
  672. 'mysql': 'php5-mysql',
  673. 'mysqlnd': 'php5-mysqlnd',
  674. 'mdb2': 'php-mdb2',
  675. 'mdb2-driver-mysql': 'php-mdb2-driver-mysql',
  676. 'mdb2-driver-pgsql': 'php-mdb2-driver-pgsql',
  677. 'pear': 'php-pear',
  678. 'pspell': 'php5-pspell',
  679. 'snmp': 'php5-snmp',
  680. 'soap': 'php-soap',
  681. 'seclib': 'php-seclib',
  682. 'ssh2': 'php5-ssh2',
  683. 'sqlite': 'php5-sqlite',
  684. 'svn': 'php5-svn',
  685. 'tidy': 'php5-tidy',
  686. 'tcpdf': 'php-tcpdf',
  687. 'twig': 'php5-twig',
  688. 'xcache': 'php5-xcache',
  689. 'xdebug': 'php5-xdebug',
  690. 'xsl': 'php5-xsl',
  691. 'xml': 'php5',
  692. 'zip': 'php5',
  693. 'redis': 'php5-redis',
  694. 'imagick': 'php5-imagick',
  695. 'suhosin': 'php5-suhosin',
  696. 'imap': 'php5-imap',
  697. 'adodb': 'php5-adodb',
  698. 'pgsql': 'php5-pgsql',
  699. 'ldap': 'php5-ldap',
  700. 'json': 'php5-json',
  701. 'net4': 'php-net-ipv4',
  702. 'net6': 'php-net-ipv6'
  703. },
  704. 'fpm': {
  705. 'conf': '/etc/php5/fpm/php-fpm.conf',
  706. 'ini': '/etc/php5/fpm/php.ini',
  707. 'pools': '/etc/php5/fpm/pool.d',
  708. 'service': 'php5-fpm',
  709. 'defaults': odict([
  710. ('global', odict([
  711. ('pid', '/var/run/php5-fpm.pid'),
  712. ('error_log', '/var/log/php5-fpm.log'),
  713. ])),
  714. ('include', '/etc/php5/fpm/pool.d/*.conf'),
  715. ]),
  716. },
  717. 'hhvm': {
  718. 'conf': '/etc/hhvm/server.ini',
  719. 'ini': '/etc/hhvm/php.ini',
  720. 'service': 'hhvm',
  721. 'defaults': {},
  722. 'server': odict([
  723. ('pid', '/var/run/hhvm/pid'),
  724. ('hhvm.server.port', '9000'),
  725. ('hhvm.server.type', 'fastcgi'),
  726. ('hhvm.server.default_document', 'index.php'),
  727. ('hhvm.log.use_log_file', 'true'),
  728. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  729. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  730. ]),
  731. 'php': odict([
  732. ('session.save_handler', 'files'),
  733. ('session.save_path', '/var/lib/hhvm/sessions'),
  734. ('session.gc_maxlifetime', '1440'),
  735. ('hhvm.log.level', 'Warning'),
  736. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  737. ('hhvm.log.runtime_error_reporting_level', '8191'),
  738. ('hhvm.mysql.typed_results', 'false'),
  739. ]),
  740. },
  741. 'cli': {
  742. 'ini': '/etc/php5/cli/php.ini',
  743. },
  744. 'apache2': {
  745. 'ini': '/etc/php5/apache2/php.ini',
  746. },
  747. 'xcache': {
  748. 'ini': '/etc/php5/mods-available/xcache.ini',
  749. 'defaults': {},
  750. },
  751. },
  752. }, grain="os"),
  753. 'fpm': {
  754. 'service': {
  755. 'enabled': True,
  756. 'opts': {},
  757. },
  758. 'config': {
  759. 'ini': {
  760. 'opts': {},
  761. 'settings': {},
  762. },
  763. 'conf': {
  764. 'opts': {},
  765. 'settings': {},
  766. },
  767. },
  768. 'pools': {
  769. 'default.conf': {
  770. 'enabled': False,
  771. 'opts': {},
  772. },
  773. },
  774. },
  775. 'hhvm': {
  776. 'service': {
  777. 'enabled': True,
  778. 'opts': {},
  779. },
  780. 'config': {
  781. 'server': {
  782. 'opts': {},
  783. 'settings': {},
  784. },
  785. 'php': {
  786. 'opts': {},
  787. 'settings': {},
  788. },
  789. },
  790. },
  791. 'cli': {
  792. 'ini': {
  793. 'opts': {},
  794. 'settings': {},
  795. }
  796. },
  797. 'apache2': {
  798. 'ini': {
  799. 'opts': {},
  800. 'settings': {},
  801. }
  802. },
  803. 'xcache': {
  804. 'ini': {
  805. 'defaults': {
  806. 'xcache-common': {
  807. 'extension': 'xcache.so',
  808. },
  809. 'xcache.admin': {
  810. 'xcache.admin.enable_auth': 'On',
  811. },
  812. 'xcache': {
  813. 'xcache.shm_scheme': '"mmap"',
  814. 'xcache.size': '60M',
  815. 'xcache.count': '1',
  816. 'xcache.slots': '8K',
  817. 'xcache.ttl': '0',
  818. 'xcache.gc_interval': '0',
  819. 'xcache.var_size': '4M',
  820. 'xcache.var_count': '1',
  821. 'xcache.var_slots': '8K',
  822. 'xcache.var_ttl': '0',
  823. 'xcache.var_maxttl': '0',
  824. 'xcache.var_gc_interval': '300',
  825. 'xcache.var_namespace_mode': '0',
  826. 'xcache.var_namespace': '""',
  827. 'xcache.readonly_protection': 'Off',
  828. 'xcache.mmap_path': '"/dev/zero"',
  829. 'xcache.coredump_directory': '""',
  830. 'xcache.coredump_type': '0',
  831. 'xcache.disable_on_crash': 'Off',
  832. 'xcache.experimental': 'Off',
  833. 'xcache.cacher': 'On',
  834. 'xcache.stat': 'On',
  835. 'xcache.optimizer': 'Off',
  836. },
  837. 'xcache.coverager': {
  838. 'xcache.coverager': 'Off',
  839. 'xcache.coverager_autostart': 'On',
  840. 'xcache.coveragedump_directory': '""',
  841. },
  842. },
  843. 'opts': {},
  844. 'settings': {},
  845. }
  846. },
  847. 'ini': {
  848. 'defaults': {
  849. 'PHP': {
  850. 'engine': 'On',
  851. 'short_open_tag': 'Off',
  852. 'asp_tags': 'Off',
  853. 'precision': 14,
  854. 'output_buffering': 4096,
  855. 'zlib.output_compression': 'Off',
  856. 'implicit_flush': 'Off',
  857. 'serialize_precision': 17,
  858. 'disable_functions': ['pcntl_alarm','pcntl_fork','pcntl_waitpid','pcntl_wait','pcntl_wifexited','pcntl_wifstopped','pcntl_wifsignaled',
  859. 'pcntl_wexitstatus','pcntl_wtermsig','pcntl_wstopsig','pcntl_signal','pcntl_signal_dispatch','pcntl_get_last_error','pcntl_strerror',
  860. 'pcntl_sigprocmask','pcntl_sigwaitinfo','pcntl_sigtimedwait','pcntl_exec','pcntl_getpriority','pcntl_setpriority'],
  861. 'zend.enable_gc': 'On',
  862. 'expose_php': 'On',
  863. 'max_execution_time': 30,
  864. 'max_input_time': 60,
  865. 'max_input_nesting_level': 64,
  866. 'max_input_vars': 1000,
  867. 'memory_limit': '128M',
  868. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  869. 'display_errors': 'Off',
  870. 'display_startup_errors': 'Off',
  871. 'log_errors': 'On',
  872. 'log_errors_max_len': 1024,
  873. 'ignore_repeated_errors': 'Off',
  874. 'ignore_repeated_source': 'Off',
  875. 'report_memleaks': 'On',
  876. 'track_errors': 'Off',
  877. 'html_errors': 'On',
  878. 'variables_order': 'GPCS',
  879. 'request_order': 'GP',
  880. 'register_argc_argv': 'Off',
  881. 'auto_globals_jit': 'On',
  882. 'post_max_size': '8M',
  883. 'default_mimetype': '"text/html"',
  884. 'enable_dl': 'Off',
  885. 'file_uploads': 'On',
  886. 'upload_max_filesize': '2M',
  887. 'max_file_uploads': 20,
  888. 'allow_url_fopen': 'On',
  889. 'allow_url_include': 'Off',
  890. 'default_socket_timeout': 60
  891. },
  892. 'CLI Server': {
  893. 'cli_server.color': 'On'
  894. },
  895. 'Date': {
  896. 'date.timezone': 'America/New_York'
  897. },
  898. 'Pdo_mysql': {
  899. 'pdo_mysql.cache_size': 2000
  900. },
  901. 'mail function': {
  902. 'SMTP': 'localhost',
  903. 'mail.add_x_header': 'On'
  904. },
  905. 'SQL': {
  906. 'sql.safe_mode': 'Off'
  907. },
  908. 'ODBC': {
  909. 'odbc.allow_persistent': 'On',
  910. 'odbc.check_persistent': 'On',
  911. 'odbc.max_persistent': '-1',
  912. 'odbc.max_links': '-1',
  913. 'odbc.defaultlrl': 4096,
  914. 'odbc.defaultbinmode': 1
  915. },
  916. 'Interbase': {
  917. 'ibase.allow_persistent': 1,
  918. 'ibase.max_persistent': -1,
  919. 'ibase.max_links': -1,
  920. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  921. 'ibase.dateformat': '"%Y-%m-%d"',
  922. 'ibase.timeformat': '"%H:%M:%S"'
  923. },
  924. 'MySQL': {
  925. 'mysql.allow_local_infile': 'On',
  926. 'mysql.allow_persistent': 'On',
  927. 'mysql.cache_size': '2000',
  928. 'mysql.max_persistent': -1,
  929. 'mysql.max_links': -1,
  930. 'mysql.connect_timeout': 60,
  931. 'mysql.trace_mode': 'Off'
  932. },
  933. 'MySQLi': {
  934. 'mysqli.max_persistent': -1,
  935. 'mysqli.allow_persistent': 'On',
  936. 'mysqli.max_links': -1,
  937. 'mysqli.cache_size': 2000,
  938. 'mysqli.default_port': 3306,
  939. 'mysqli.reconnect': 'Off'
  940. },
  941. 'mysqlnd': {
  942. 'mysqlnd.collect_statistics': 'On',
  943. 'mysqlnd.collect_memory_statistics': 'Off'
  944. },
  945. 'PostgreSQL': {
  946. 'pgsql.allow_persistent': 'On',
  947. 'pgsql.auto_reset_persistent': 'Off',
  948. 'pgsql.max_persistent': -1,
  949. 'pgsql.max_links': -1,
  950. 'pgsql.ignore_notice': 0,
  951. 'pgsql.log_notice': 0
  952. },
  953. 'Sybase-CT': {
  954. 'sybct.allow_persistent': 'On',
  955. 'sybct.max_persistent': -1,
  956. 'sybct.max_links': -1,
  957. 'sybct.min_server_severity': 10,
  958. 'sybct.min_client_severity': 10
  959. },
  960. 'bcmath': {
  961. 'bcmath.scale': 0
  962. },
  963. 'Session': {
  964. 'session.save_handler': 'files',
  965. 'session.use_strict_mode': 0,
  966. 'session.use_cookies': 1,
  967. 'session.use_only_cookies': 1,
  968. 'session.name': 'PHPSESSID',
  969. 'session.auto_start': 0,
  970. 'session.cookie_lifetime': 0,
  971. 'session.cookie_path': '/',
  972. 'session.serialize_handler': 'php',
  973. 'session.gc_probability': 0,
  974. 'session.gc_divisor': 1000,
  975. 'session.gc_maxlifetime': 1440,
  976. 'session.bug_compat_42': 'Off',
  977. 'session.bug_compat_warn': 'Off',
  978. 'session.cache_limiter': 'nocache',
  979. 'session.cache_expire': '180',
  980. 'session.use_trans_sid': 0,
  981. 'session.hash_function': 0,
  982. 'session.hash_bits_per_character': 5,
  983. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  984. },
  985. 'MSSQL': {
  986. 'mssql.allow_persistent': 'On',
  987. 'mssql.max_persistent': -1,
  988. 'mssql.max_links': -1,
  989. 'mssql.min_error_severity': 10,
  990. 'mssql.min_message_severity': 10,
  991. 'mssql.compatibility_mode': 'Off',
  992. 'mssql.secure_connection': 'Off'
  993. },
  994. 'Tidy': {
  995. 'tidy.clean_output': 'Off'
  996. },
  997. 'soap': {
  998. 'soap.wsdl_cache_enabled': 1,
  999. 'soap.wsdl_cache_dir': '"/tmp"',
  1000. 'soap.wsdl_cache_ttl': 86400,
  1001. 'soap.wsdl_cache_limit': 5
  1002. },
  1003. 'ldap': {
  1004. 'ldap.max_links': -1
  1005. },
  1006. },
  1007. },
  1008. }, merge=True) %}
  1009. {% endif %}
  1010. {% else %}
  1011. {% set php = salt['pillar.get']('php:ng', {
  1012. 'lookup': salt['grains.filter_by']({
  1013. 'Debian': {
  1014. 'pkgs': {
  1015. 'php': 'php5',
  1016. 'apc': 'php-apc',
  1017. 'apcu': 'php5-apcu',
  1018. 'cgi': 'php5-cgi',
  1019. 'cli': 'php5-cli',
  1020. 'cache-lite': 'php-cache-lite',
  1021. 'console-table': 'php-console-table',
  1022. 'dev': ['php5-dev','build-essential'],
  1023. 'oauth': 'php5-oauth',
  1024. 'apache2': 'libapache2-mod-php5',
  1025. 'curl': 'php5-curl',
  1026. 'gearman': 'php5-gearman',
  1027. 'fpm': 'php5-fpm',
  1028. 'ffmpeg': ['php5-ffmpeg', 'ffmpeg'],
  1029. 'hhvm': 'hhvm',
  1030. 'gd': 'php5-gd',
  1031. 'gmp': 'php5-gmp',
  1032. 'geoip': 'php5-geoip',
  1033. 'gettext': 'php-gettext',
  1034. 'geshi': 'php-geshi',
  1035. 'intl': 'php5-intl',
  1036. 'mbstring': 'php5',
  1037. 'mcrypt': 'php5-mcrypt',
  1038. 'memcache': 'php5-memcache',
  1039. 'memcached': 'php5-memcached',
  1040. 'mysql': 'php5-mysql',
  1041. 'mysqlnd': 'php5-mysqlnd',
  1042. 'mdb2': 'php-mdb2',
  1043. 'mdb2-driver-mysql': 'php-mdb2-driver-mysql',
  1044. 'mdb2-driver-pgsql': 'php-mdb2-driver-pgsql',
  1045. 'pear': 'php-pear',
  1046. 'pspell': 'php5-pspell',
  1047. 'snmp': 'php5-snmp',
  1048. 'seclib': 'php-seclib',
  1049. 'soap': 'php-soap',
  1050. 'ssh2': 'php5-ssh2',
  1051. 'sqlite': 'php5-sqlite',
  1052. 'svn': 'php5-svn',
  1053. 'tidy': 'php5-tidy',
  1054. 'tcpdf': 'php5-tcpdf',
  1055. 'twig': 'php5-twig',
  1056. 'xcache': 'php5-xcache',
  1057. 'xdebug': 'php5-xdebug',
  1058. 'xsl': 'php5-xsl',
  1059. 'xml': 'php5',
  1060. 'zip': 'php5',
  1061. 'redis': 'php5-redis',
  1062. 'imagick': 'php5-imagick',
  1063. 'suhosin': 'php5-suhosin',
  1064. 'imap': 'php5-imap',
  1065. 'adodb': 'php5-adodb',
  1066. 'pgsql': 'php5-pgsql',
  1067. 'ldap': 'php5-ldap',
  1068. 'json': 'php5-json',
  1069. 'net4': 'php-net-ipv4',
  1070. 'net6': 'php-net-ipv6'
  1071. },
  1072. 'fpm': {
  1073. 'conf': '/etc/php5/fpm/php-fpm.conf',
  1074. 'ini': '/etc/php5/fpm/php.ini',
  1075. 'pools': '/etc/php5/fpm/pool.d',
  1076. 'service': 'php5-fpm',
  1077. 'defaults': odict([
  1078. ('global', odict([
  1079. ('pid', '/var/run/php5-fpm.pid'),
  1080. ('error_log', '/var/log/php5-fpm.log'),
  1081. ])),
  1082. ('include', '/etc/php5/fpm/pool.d/*.conf'),
  1083. ]),
  1084. },
  1085. 'hhvm': {
  1086. 'conf': '/etc/hhvm/server.ini',
  1087. 'ini': '/etc/hhvm/php.ini',
  1088. 'service': 'hhvm',
  1089. 'defaults': {},
  1090. 'server': odict([
  1091. ('pid', '/var/run/hhvm/pid'),
  1092. ('hhvm.server.port', '9000'),
  1093. ('hhvm.server.type', 'fastcgi'),
  1094. ('hhvm.server.default_document', 'index.php'),
  1095. ('hhvm.log.use_log_file', 'true'),
  1096. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  1097. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  1098. ]),
  1099. 'php': odict([
  1100. ('session.save_handler', 'files'),
  1101. ('session.save_path', '/var/lib/hhvm/sessions'),
  1102. ('session.gc_maxlifetime', '1440'),
  1103. ('hhvm.log.level', 'Warning'),
  1104. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  1105. ('hhvm.log.runtime_error_reporting_level', '8191'),
  1106. ('hhvm.mysql.typed_results', 'false'),
  1107. ]),
  1108. },
  1109. 'cli': {
  1110. 'ini': '/etc/php5/cli/php.ini',
  1111. },
  1112. 'apache2': {
  1113. 'ini': '/etc/php5/apache2/php.ini',
  1114. },
  1115. 'xcache': {
  1116. 'ini': '/etc/php5/mods-available/xcache.ini',
  1117. 'defaults': {},
  1118. },
  1119. },
  1120. 'RedHat': {
  1121. 'pkgs': {
  1122. 'php': 'php',
  1123. 'apc': 'php-pecl-apc',
  1124. 'apcu': 'php-pecl-apcu',
  1125. 'cgi': 'php-cgi',
  1126. 'cli': 'php-cli',
  1127. 'composer': 'composer',
  1128. 'oauth': 'php-oauth',
  1129. 'curl': ['php-common', 'curl'],
  1130. 'fpm': 'php-fpm',
  1131. 'gd': 'php-gd',
  1132. 'intl': 'php-intl',
  1133. 'mbstring': 'php-mbstring',
  1134. 'mcrypt': 'php-mcrypt',
  1135. 'memcache': 'php-pecl-memcache',
  1136. 'memcached': 'php-pecl-memcached',
  1137. 'opcache': 'php-pecl-zendopcache',
  1138. 'mysql': 'php-mysql',
  1139. 'mysqlnd': 'php-mysqlnd',
  1140. 'pear': 'php-pear',
  1141. 'snmp': 'php-snmp',
  1142. 'soap': 'php-soap',
  1143. 'sqlite': 'php5-sqlite',
  1144. 'xcache': 'php-xcache',
  1145. 'xml': 'php-xml',
  1146. 'zip': 'php',
  1147. 'redis': 'php-redis',
  1148. 'imagick': 'php-imagick',
  1149. 'suhosin': 'php-suhosin',
  1150. 'imap': 'php-imap',
  1151. 'adodb': 'php-adodb',
  1152. 'pgsql': 'php-pgsql',
  1153. 'ldap': 'php-ldap',
  1154. 'json': 'php-common',
  1155. },
  1156. 'fpm': {
  1157. 'conf': '/etc/php-fpm.conf',
  1158. 'ini': '/etc/php.ini',
  1159. 'pools': '/etc/php-fpm.d',
  1160. 'service': 'php-fpm',
  1161. 'defaults': {
  1162. 'global': {
  1163. 'pid': '/var/run/php-fpm/php-fpm.pid',
  1164. 'error_log': '/var/log/php-fpm/error.log',
  1165. },
  1166. 'include': '/etc/php-fpm.d/*.conf',
  1167. },
  1168. },
  1169. 'cli': {
  1170. 'ini': '/etc/php.ini',
  1171. },
  1172. 'xcache': {
  1173. 'ini': '/etc/php.d/xcache.ini',
  1174. },
  1175. },
  1176. 'Suse': {
  1177. 'pkgs': {
  1178. 'php': 'php5',
  1179. 'apache2': 'apache2-mod_php5',
  1180. 'cli': 'php5',
  1181. 'oauth': 'php5-oauth',
  1182. 'curl': 'php5-curl',
  1183. 'fpm': 'php5-fpm',
  1184. 'gd': 'php5-gd',
  1185. 'intl': 'php5-intl',
  1186. 'mbstring': 'php5-mbstring',
  1187. 'mcrypt': 'php5-mcrypt',
  1188. 'mysql': 'php5-mysql',
  1189. 'pear': 'php5-pear',
  1190. 'snmp': 'php5-snmp',
  1191. 'soap': 'php5-soap',
  1192. 'sqlite': 'php5-sqlite',
  1193. 'xml': ['php5-xmlreader','php5-xmlwriter','php5-xmlrpc'],
  1194. 'zip': 'php5-zip',
  1195. 'suhosin': 'php5-suhosin',
  1196. 'imap': 'php5-imap',
  1197. 'adodb': 'php5-dba',
  1198. 'pgsql': 'php5-pgsql',
  1199. 'ldap': 'php5-ldap',
  1200. 'json': 'php5-json',
  1201. },
  1202. 'fpm': {
  1203. 'conf': '/etc/php-fpm.conf',
  1204. 'ini': '/etc/php.ini',
  1205. 'pools': '/etc/php-fpm.d',
  1206. 'service': 'php-fpm',
  1207. 'defaults': {
  1208. 'global': {
  1209. 'pid': '/var/run/php-fpm/php-fpm.pid',
  1210. 'error_log': '/var/log/php-fpm/error.log',
  1211. },
  1212. 'include': '/etc/php-fpm.d/*.conf',
  1213. },
  1214. },
  1215. 'cli': {
  1216. 'ini': '/etc/php.ini',
  1217. },
  1218. },
  1219. 'Arch': {
  1220. 'pkgs': {
  1221. 'php': 'php',
  1222. 'cli': 'php',
  1223. 'apcu': 'php-apcu',
  1224. 'cgi': 'php-cgi',
  1225. 'curl': 'curl',
  1226. 'fpm': 'php-fpm',
  1227. 'gd': 'php-gd',
  1228. 'geoip': 'php-geoip',
  1229. 'intl': 'php-intl',
  1230. 'mcrypt': 'php-mcrypt',
  1231. 'memcache': 'php-memcache',
  1232. 'memcached': 'php-memcached',
  1233. 'pear': 'php-pear',
  1234. 'snmp': 'php-snmp',
  1235. 'sqlite': 'php-sqlite',
  1236. 'xcache': 'php-xcache',
  1237. 'pgsql': 'php-pgsql',
  1238. 'ldap': 'php-ldap',
  1239. 'tidy': 'php-tidy',
  1240. },
  1241. 'fpm': {
  1242. 'conf': '/etc/php/php-fpm.conf',
  1243. 'ini': '/etc/php/php.ini',
  1244. 'pools': '/etc/php/fpm.d',
  1245. 'service': 'php-fpm',
  1246. 'defaults': {
  1247. 'global': {
  1248. 'pid': '/run/php-fpm/php-fpm.pid',
  1249. 'error_log': 'log/php-fpm.log',
  1250. },
  1251. 'include': '/etc/php/fpm.d/*.conf',
  1252. },
  1253. },
  1254. 'cli': {
  1255. 'ini': '/etc/php/php-cli.ini',
  1256. },
  1257. 'xcache': {
  1258. 'ini': '/etc/php/conf.d/xcache.ini',
  1259. },
  1260. },
  1261. }),
  1262. 'fpm': {
  1263. 'service': {
  1264. 'enabled': True,
  1265. 'opts': {},
  1266. },
  1267. 'config': {
  1268. 'ini': {
  1269. 'opts': {},
  1270. 'settings': {},
  1271. },
  1272. 'conf': {
  1273. 'opts': {},
  1274. 'settings': {},
  1275. },
  1276. },
  1277. 'pools': {
  1278. 'default.conf': {
  1279. 'enabled': False,
  1280. 'opts': {},
  1281. },
  1282. },
  1283. },
  1284. 'hhvm': {
  1285. 'service': {
  1286. 'enabled': True,
  1287. 'opts': {},
  1288. },
  1289. 'config': {
  1290. 'server': {
  1291. 'opts': {},
  1292. 'settings': {},
  1293. },
  1294. 'php': {
  1295. 'opts': {},
  1296. 'settings': {},
  1297. },
  1298. },
  1299. },
  1300. 'cli': {
  1301. 'ini': {
  1302. 'opts': {},
  1303. 'settings': {},
  1304. }
  1305. },
  1306. 'apache2': {
  1307. 'ini': {
  1308. 'opts': {},
  1309. 'settings': {},
  1310. }
  1311. },
  1312. 'xcache': {
  1313. 'ini': {
  1314. 'defaults': {
  1315. 'xcache-common': {
  1316. 'extension': 'xcache.so',
  1317. },
  1318. 'xcache.admin': {
  1319. 'xcache.admin.enable_auth': 'On',
  1320. },
  1321. 'xcache': {
  1322. 'xcache.shm_scheme': '"mmap"',
  1323. 'xcache.size': '60M',
  1324. 'xcache.count': '1',
  1325. 'xcache.slots': '8K',
  1326. 'xcache.ttl': '0',
  1327. 'xcache.gc_interval': '0',
  1328. 'xcache.var_size': '4M',
  1329. 'xcache.var_count': '1',
  1330. 'xcache.var_slots': '8K',
  1331. 'xcache.var_ttl': '0',
  1332. 'xcache.var_maxttl': '0',
  1333. 'xcache.var_gc_interval': '300',
  1334. 'xcache.var_namespace_mode': '0',
  1335. 'xcache.var_namespace': '""',
  1336. 'xcache.readonly_protection': 'Off',
  1337. 'xcache.mmap_path': '"/dev/zero"',
  1338. 'xcache.coredump_directory': '""',
  1339. 'xcache.coredump_type': '0',
  1340. 'xcache.disable_on_crash': 'Off',
  1341. 'xcache.experimental': 'Off',
  1342. 'xcache.cacher': 'On',
  1343. 'xcache.stat': 'On',
  1344. 'xcache.optimizer': 'Off',
  1345. },
  1346. 'xcache.coverager': {
  1347. 'xcache.coverager': 'Off',
  1348. 'xcache.coverager_autostart': 'On',
  1349. 'xcache.coveragedump_directory': '""',
  1350. },
  1351. },
  1352. 'opts': {},
  1353. 'settings': {},
  1354. }
  1355. },
  1356. 'ini': {
  1357. 'defaults': {
  1358. 'PHP': {
  1359. 'engine': 'On',
  1360. 'short_open_tag': 'Off',
  1361. 'asp_tags': 'Off',
  1362. 'precision': 14,
  1363. 'output_buffering': 4096,
  1364. 'zlib.output_compression': 'Off',
  1365. 'implicit_flush': 'Off',
  1366. 'serialize_precision': 17,
  1367. 'disable_functions': ['pcntl_alarm','pcntl_fork','pcntl_waitpid','pcntl_wait','pcntl_wifexited','pcntl_wifstopped','pcntl_wifsignaled',
  1368. 'pcntl_wexitstatus','pcntl_wtermsig','pcntl_wstopsig','pcntl_signal','pcntl_signal_dispatch','pcntl_get_last_error','pcntl_strerror',
  1369. 'pcntl_sigprocmask','pcntl_sigwaitinfo','pcntl_sigtimedwait','pcntl_exec','pcntl_getpriority','pcntl_setpriority'],
  1370. 'zend.enable_gc': 'On',
  1371. 'expose_php': 'On',
  1372. 'max_execution_time': 30,
  1373. 'max_input_time': 60,
  1374. 'max_input_nesting_level': 64,
  1375. 'max_input_vars': 1000,
  1376. 'memory_limit': '128M',
  1377. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  1378. 'display_errors': 'Off',
  1379. 'display_startup_errors': 'Off',
  1380. 'log_errors': 'On',
  1381. 'log_errors_max_len': 1024,
  1382. 'ignore_repeated_errors': 'Off',
  1383. 'ignore_repeated_source': 'Off',
  1384. 'report_memleaks': 'On',
  1385. 'track_errors': 'Off',
  1386. 'html_errors': 'On',
  1387. 'variables_order': 'GPCS',
  1388. 'request_order': 'GP',
  1389. 'register_argc_argv': 'Off',
  1390. 'auto_globals_jit': 'On',
  1391. 'post_max_size': '8M',
  1392. 'default_mimetype': '"text/html"',
  1393. 'enable_dl': 'Off',
  1394. 'file_uploads': 'On',
  1395. 'upload_max_filesize': '2M',
  1396. 'max_file_uploads': 20,
  1397. 'allow_url_fopen': 'On',
  1398. 'allow_url_include': 'Off',
  1399. 'default_socket_timeout': 60
  1400. },
  1401. 'CLI Server': {
  1402. 'cli_server.color': 'On'
  1403. },
  1404. 'Date': {
  1405. 'date.timezone': 'America/New_York'
  1406. },
  1407. 'Pdo_mysql': {
  1408. 'pdo_mysql.cache_size': 2000
  1409. },
  1410. 'mail function': {
  1411. 'SMTP': 'localhost',
  1412. 'mail.add_x_header': 'On'
  1413. },
  1414. 'SQL': {
  1415. 'sql.safe_mode': 'Off'
  1416. },
  1417. 'ODBC': {
  1418. 'odbc.allow_persistent': 'On',
  1419. 'odbc.check_persistent': 'On',
  1420. 'odbc.max_persistent': '-1',
  1421. 'odbc.max_links': '-1',
  1422. 'odbc.defaultlrl': 4096,
  1423. 'odbc.defaultbinmode': 1
  1424. },
  1425. 'Interbase': {
  1426. 'ibase.allow_persistent': 1,
  1427. 'ibase.max_persistent': -1,
  1428. 'ibase.max_links': -1,
  1429. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  1430. 'ibase.dateformat': '"%Y-%m-%d"',
  1431. 'ibase.timeformat': '"%H:%M:%S"'
  1432. },
  1433. 'MySQL': {
  1434. 'mysql.allow_local_infile': 'On',
  1435. 'mysql.allow_persistent': 'On',
  1436. 'mysql.cache_size': '2000',
  1437. 'mysql.max_persistent': -1,
  1438. 'mysql.max_links': -1,
  1439. 'mysql.connect_timeout': 60,
  1440. 'mysql.trace_mode': 'Off'
  1441. },
  1442. 'MySQLi': {
  1443. 'mysqli.max_persistent': -1,
  1444. 'mysqli.allow_persistent': 'On',
  1445. 'mysqli.max_links': -1,
  1446. 'mysqli.cache_size': 2000,
  1447. 'mysqli.default_port': 3306,
  1448. 'mysqli.reconnect': 'Off'
  1449. },
  1450. 'mysqlnd': {
  1451. 'mysqlnd.collect_statistics': 'On',
  1452. 'mysqlnd.collect_memory_statistics': 'Off'
  1453. },
  1454. 'PostgreSQL': {
  1455. 'pgsql.allow_persistent': 'On',
  1456. 'pgsql.auto_reset_persistent': 'Off',
  1457. 'pgsql.max_persistent': -1,
  1458. 'pgsql.max_links': -1,
  1459. 'pgsql.ignore_notice': 0,
  1460. 'pgsql.log_notice': 0
  1461. },
  1462. 'Sybase-CT': {
  1463. 'sybct.allow_persistent': 'On',
  1464. 'sybct.max_persistent': -1,
  1465. 'sybct.max_links': -1,
  1466. 'sybct.min_server_severity': 10,
  1467. 'sybct.min_client_severity': 10
  1468. },
  1469. 'bcmath': {
  1470. 'bcmath.scale': 0
  1471. },
  1472. 'Session': {
  1473. 'session.save_handler': 'files',
  1474. 'session.use_strict_mode': 0,
  1475. 'session.use_cookies': 1,
  1476. 'session.use_only_cookies': 1,
  1477. 'session.name': 'PHPSESSID',
  1478. 'session.auto_start': 0,
  1479. 'session.cookie_lifetime': 0,
  1480. 'session.cookie_path': '/',
  1481. 'session.serialize_handler': 'php',
  1482. 'session.gc_probability': 0,
  1483. 'session.gc_divisor': 1000,
  1484. 'session.gc_maxlifetime': 1440,
  1485. 'session.bug_compat_42': 'Off',
  1486. 'session.bug_compat_warn': 'Off',
  1487. 'session.cache_limiter': 'nocache',
  1488. 'session.cache_expire': '180',
  1489. 'session.use_trans_sid': 0,
  1490. 'session.hash_function': 0,
  1491. 'session.hash_bits_per_character': 5,
  1492. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  1493. },
  1494. 'MSSQL': {
  1495. 'mssql.allow_persistent': 'On',
  1496. 'mssql.max_persistent': -1,
  1497. 'mssql.max_links': -1,
  1498. 'mssql.min_error_severity': 10,
  1499. 'mssql.min_message_severity': 10,
  1500. 'mssql.compatibility_mode': 'Off',
  1501. 'mssql.secure_connection': 'Off'
  1502. },
  1503. 'Tidy': {
  1504. 'tidy.clean_output': 'Off'
  1505. },
  1506. 'soap': {
  1507. 'soap.wsdl_cache_enabled': 1,
  1508. 'soap.wsdl_cache_dir': '"/tmp"',
  1509. 'soap.wsdl_cache_ttl': 86400,
  1510. 'soap.wsdl_cache_limit': 5
  1511. },
  1512. 'ldap': {
  1513. 'ldap.max_links': -1
  1514. },
  1515. },
  1516. },
  1517. }, merge=True) %}
  1518. {% endif %}
  1519. {% endif %}