Saltstack Official PHP Formula
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

1003 行
42KB

  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. },
  34. 'fpm': {
  35. 'conf': '/etc/php/7.0/fpm/php-fpm.conf',
  36. 'ini': '/etc/php/7.0/fpm/php.ini',
  37. 'pools': '/etc/php/7.0/fpm/pool.d',
  38. 'service': 'php7.0-fpm',
  39. 'defaults': odict([
  40. ('global', odict([
  41. ('pid', '/var/run/php7.0-fpm.pid'),
  42. ('error_log', '/var/log/php7.0-fpm.log'),
  43. ])),
  44. ('include', '/etc/php/7.0/fpm/pool.d/*.conf'),
  45. ]),
  46. },
  47. 'hhvm': {
  48. 'conf': '/etc/hhvm/server.ini',
  49. 'ini': '/etc/hhvm/php.ini',
  50. 'service': 'hhvm',
  51. 'defaults': {},
  52. 'server': odict([
  53. ('pid', '/var/run/hhvm/pid'),
  54. ('hhvm.server.port', '9000'),
  55. ('hhvm.server.type', 'fastcgi'),
  56. ('hhvm.server.default_document', 'index.php'),
  57. ('hhvm.log.use_log_file', 'true'),
  58. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  59. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  60. ]),
  61. 'php': odict([
  62. ('session.save_handler', 'files'),
  63. ('session.save_path', '/var/lib/hhvm/sessions'),
  64. ('session.gc_maxlifetime', '1440'),
  65. ('hhvm.log.level', 'Warning'),
  66. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  67. ('hhvm.log.runtime_error_reporting_level', '8191'),
  68. ('hhvm.mysql.typed_results', 'false'),
  69. ]),
  70. },
  71. 'cli': {
  72. 'ini': '/etc/php/7.0/cli/php.ini',
  73. },
  74. 'apache2': {
  75. 'ini': '/etc/php/7.0/apache2/php.ini',
  76. },
  77. },
  78. }),
  79. 'fpm': {
  80. 'service': {
  81. 'enabled': True,
  82. 'opts': {},
  83. },
  84. 'config': {
  85. 'ini': {
  86. 'opts': {},
  87. 'settings': {},
  88. },
  89. 'conf': {
  90. 'opts': {},
  91. 'settings': {},
  92. },
  93. },
  94. 'pools': {},
  95. },
  96. 'hhvm': {
  97. 'service': {
  98. 'enabled': True,
  99. 'opts': {},
  100. },
  101. 'config': {
  102. 'server': {
  103. 'opts': {},
  104. 'settings': {},
  105. },
  106. 'php': {
  107. 'opts': {},
  108. 'settings': {},
  109. },
  110. },
  111. },
  112. 'cli': {
  113. 'ini': {
  114. 'opts': {},
  115. 'settings': {},
  116. }
  117. },
  118. 'apache2': {
  119. 'ini': {
  120. 'opts': {},
  121. 'settings': {},
  122. }
  123. },
  124. 'ini': {
  125. 'defaults': {
  126. 'PHP': {
  127. 'engine': 'On',
  128. 'short_open_tag': 'Off',
  129. 'asp_tags': 'Off',
  130. 'precision': 14,
  131. 'output_buffering': 4096,
  132. 'zlib.output_compression': 'Off',
  133. 'implicit_flush': 'Off',
  134. 'serialize_precision': 17,
  135. 'disable_functions': ['pcntl_alarm','pcntl_fork','pcntl_waitpid','pcntl_wait','pcntl_wifexited','pcntl_wifstopped','pcntl_wifsignaled',
  136. 'pcntl_wexitstatus','pcntl_wtermsig','pcntl_wstopsig','pcntl_signal','pcntl_signal_dispatch','pcntl_get_last_error','pcntl_strerror',
  137. 'pcntl_sigprocmask','pcntl_sigwaitinfo','pcntl_sigtimedwait','pcntl_exec','pcntl_getpriority','pcntl_setpriority'],
  138. 'zend.enable_gc': 'On',
  139. 'expose_php': 'On',
  140. 'max_execution_time': 30,
  141. 'max_input_time': 60,
  142. 'max_input_nesting_level': 64,
  143. 'max_input_vars': 1000,
  144. 'memory_limit': '128M',
  145. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  146. 'display_errors': 'Off',
  147. 'display_startup_errors': 'Off',
  148. 'log_errors': 'On',
  149. 'log_errors_max_len': 1024,
  150. 'ignore_repeated_errors': 'Off',
  151. 'ignore_repeated_source': 'Off',
  152. 'report_memleaks': 'On',
  153. 'track_errors': 'Off',
  154. 'html_errors': 'On',
  155. 'variables_order': 'GPCS',
  156. 'request_order': 'GP',
  157. 'register_argc_argv': 'Off',
  158. 'auto_globals_jit': 'On',
  159. 'post_max_size': '8M',
  160. 'default_mimetype': '"text/html"',
  161. 'enable_dl': 'Off',
  162. 'file_uploads': 'On',
  163. 'upload_max_filesize': '2M',
  164. 'max_file_uploads': 20,
  165. 'allow_url_fopen': 'On',
  166. 'allow_url_include': 'Off',
  167. 'default_socket_timeout': 60
  168. },
  169. 'CLI Server': {
  170. 'cli_server.color': 'On'
  171. },
  172. 'Date': {
  173. 'date.timezone': 'America/New_York'
  174. },
  175. 'Pdo_mysql': {
  176. 'pdo_mysql.cache_size': 2000
  177. },
  178. 'mail function': {
  179. 'SMTP': 'localhost',
  180. 'mail.add_x_header': 'On'
  181. },
  182. 'SQL': {
  183. 'sql.safe_mode': 'Off'
  184. },
  185. 'ODBC': {
  186. 'odbc.allow_persistent': 'On',
  187. 'odbc.check_persistent': 'On',
  188. 'odbc.max_persistent': '-1',
  189. 'odbc.max_links': '-1',
  190. 'odbc.defaultlrl': 4096,
  191. 'odbc.defaultbinmode': 1
  192. },
  193. 'Interbase': {
  194. 'ibase.allow_persistent': 1,
  195. 'ibase.max_persistent': -1,
  196. 'ibase.max_links': -1,
  197. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  198. 'ibase.dateformat': '"%Y-%m-%d"',
  199. 'ibase.timeformat': '"%H:%M:%S"'
  200. },
  201. 'MySQL': {
  202. 'mysql.allow_local_infile': 'On',
  203. 'mysql.allow_persistent': 'On',
  204. 'mysql.cache_size': '2000',
  205. 'mysql.max_persistent': -1,
  206. 'mysql.max_links': -1,
  207. 'mysql.connect_timeout': 60,
  208. 'mysql.trace_mode': 'Off'
  209. },
  210. 'MySQLi': {
  211. 'mysqli.max_persistent': -1,
  212. 'mysqli.allow_persistent': 'On',
  213. 'mysqli.max_links': -1,
  214. 'mysqli.cache_size': 2000,
  215. 'mysqli.default_port': 3306,
  216. 'mysqli.reconnect': 'Off'
  217. },
  218. 'mysqlnd': {
  219. 'mysqlnd.collect_statistics': 'On',
  220. 'mysqlnd.collect_memory_statistics': 'Off'
  221. },
  222. 'PostgreSQL': {
  223. 'pgsql.allow_persistent': 'On',
  224. 'pgsql.auto_reset_persistent': 'Off',
  225. 'pgsql.max_persistent': -1,
  226. 'pgsql.max_links': -1,
  227. 'pgsql.ignore_notice': 0,
  228. 'pgsql.log_notice': 0
  229. },
  230. 'Sybase-CT': {
  231. 'sybct.allow_persistent': 'On',
  232. 'sybct.max_persistent': -1,
  233. 'sybct.max_links': -1,
  234. 'sybct.min_server_severity': 10,
  235. 'sybct.min_client_severity': 10
  236. },
  237. 'bcmath': {
  238. 'bcmath.scale': 0
  239. },
  240. 'Session': {
  241. 'session.save_handler': 'files',
  242. 'session.use_strict_mode': 0,
  243. 'session.use_cookies': 1,
  244. 'session.use_only_cookies': 1,
  245. 'session.name': 'PHPSESSID',
  246. 'session.auto_start': 0,
  247. 'session.cookie_lifetime': 0,
  248. 'session.cookie_path': '/',
  249. 'session.serialize_handler': 'php',
  250. 'session.gc_probability': 0,
  251. 'session.gc_divisor': 1000,
  252. 'session.gc_maxlifetime': 1440,
  253. 'session.bug_compat_42': 'Off',
  254. 'session.bug_compat_warn': 'Off',
  255. 'session.cache_limiter': 'nocache',
  256. 'session.cache_expire': '180',
  257. 'session.use_trans_sid': 0,
  258. 'session.hash_function': 0,
  259. 'session.hash_bits_per_character': 5,
  260. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  261. },
  262. 'MSSQL': {
  263. 'mssql.allow_persistent': 'On',
  264. 'mssql.max_persistent': -1,
  265. 'mssql.max_links': -1,
  266. 'mssql.min_error_severity': 10,
  267. 'mssql.min_message_severity': 10,
  268. 'mssql.compatibility_mode': 'Off',
  269. 'mssql.secure_connection': 'Off'
  270. },
  271. 'Tidy': {
  272. 'tidy.clean_output': 'Off'
  273. },
  274. 'soap': {
  275. 'soap.wsdl_cache_enabled': 1,
  276. 'soap.wsdl_cache_dir': '"/tmp"',
  277. 'soap.wsdl_cache_ttl': 86400,
  278. 'soap.wsdl_cache_limit': 5
  279. },
  280. 'ldap': {
  281. 'ldap.max_links': -1
  282. },
  283. },
  284. },
  285. }, merge=True) %}
  286. {% else %}
  287. {% if salt['grains.get']('os') == 'Ubuntu' %}
  288. {% if salt['grains.get']('osrelease')|string >= '16.04' %}
  289. {% set php = salt['pillar.get']('php:ng', {
  290. 'lookup': salt['grains.filter_by']({
  291. 'Ubuntu': {
  292. 'pkgs': {
  293. 'php': 'php',
  294. 'apc': 'php',
  295. 'apcu': 'php-apcu',
  296. 'cgi': 'php-cgi',
  297. 'cli': 'php-cli',
  298. 'oauth': 'php-oauth',
  299. 'apache2': 'libapache2-mod-php',
  300. 'curl': 'php-curl',
  301. 'fpm': 'php-fpm',
  302. 'hhvm': 'hhvm',
  303. 'gd': 'php-gd',
  304. 'gmp': 'php-gmp',
  305. 'geoip': 'php-geoip',
  306. 'intl': 'php-intl',
  307. 'mbstring': 'php-mbstring',
  308. 'mcrypt': 'php-mcrypt',
  309. 'memcache': 'php-memcache',
  310. 'memcached': 'php-memcached',
  311. 'mysql': 'php-mysql',
  312. 'mysqlnd': 'php',
  313. 'pear': 'php-pear',
  314. 'pspell': 'php-pspell',
  315. 'snmp': 'php-snmp',
  316. 'soap': 'php-soap',
  317. 'sqlite': 'php-sqlite3',
  318. 'xcache': 'php',
  319. 'xdebug': 'php-xdebug',
  320. 'xsl': 'php7.0-xsl',
  321. 'xml': 'php-xml',
  322. 'zip': 'php-zip',
  323. 'redis': 'php-redis',
  324. 'imagick': 'php-imagick',
  325. 'suhosin': 'php',
  326. 'imap': 'php-imap',
  327. 'adodb': 'php-adodb',
  328. 'pgsql': 'php-pgsql',
  329. 'ldap': 'php-ldap',
  330. 'json': 'php-json'
  331. },
  332. 'fpm': {
  333. 'conf': '/etc/php/7.0/fpm/php-fpm.conf',
  334. 'ini': '/etc/php/7.0/fpm/php.ini',
  335. 'pools': '/etc/php/7.0/fpm/pool.d',
  336. 'service': 'php7.0-fpm',
  337. 'defaults': odict([
  338. ('global', odict([
  339. ('pid', '/var/run/php7.0-fpm.pid'),
  340. ('error_log', '/var/log/php7.0-fpm.log'),
  341. ])),
  342. ('include', '/etc/php/7.0/fpm/pool.d/*.conf'),
  343. ]),
  344. },
  345. 'hhvm': {
  346. 'conf': '/etc/hhvm/server.ini',
  347. 'ini': '/etc/hhvm/php.ini',
  348. 'service': 'hhvm',
  349. 'defaults': {},
  350. 'server': odict([
  351. ('pid', '/var/run/hhvm/pid'),
  352. ('hhvm.server.port', '9000'),
  353. ('hhvm.server.type', 'fastcgi'),
  354. ('hhvm.server.default_document', 'index.php'),
  355. ('hhvm.log.use_log_file', 'true'),
  356. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  357. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  358. ]),
  359. 'php': odict([
  360. ('session.save_handler', 'files'),
  361. ('session.save_path', '/var/lib/hhvm/sessions'),
  362. ('session.gc_maxlifetime', '1440'),
  363. ('hhvm.log.level', 'Warning'),
  364. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  365. ('hhvm.log.runtime_error_reporting_level', '8191'),
  366. ('hhvm.mysql.typed_results', 'false'),
  367. ]),
  368. },
  369. 'cli': {
  370. 'ini': '/etc/php/7.0/cli/php.ini',
  371. },
  372. 'apache2': {
  373. 'ini': '/etc/php/7.0/apache2/php.ini',
  374. },
  375. 'xcache': {
  376. 'ini': '/etc/php/7.0/mods-available/xcache.ini',
  377. 'defaults': {},
  378. },
  379. },
  380. }, grain="os"),
  381. }, merge=True) %}
  382. {% else %}
  383. {% set php = salt['pillar.get']('php:ng', {
  384. 'lookup': salt['grains.filter_by']({
  385. 'Ubuntu': {
  386. 'pkgs': {
  387. 'php': 'php5',
  388. 'apc': 'php-apc',
  389. 'apcu': 'php5-apcu',
  390. 'cache-lite': 'php-cache-lite',
  391. 'console-table': 'php-console-table',
  392. 'cgi': 'php5-cgi',
  393. 'cli': 'php5-cli',
  394. 'dev': ['php5-dev','build-essential'],
  395. 'oauth': 'php5-oauth',
  396. 'apache2': 'libapache2-mod-php5',
  397. 'curl': 'php5-curl',
  398. 'gearman': 'php5-gearman',
  399. 'gettext': 'php-gettext',
  400. 'geshi': 'php-geshi',
  401. 'ffmpeg': ['php5-ffmpeg', 'ffmpeg'],
  402. 'fpm': 'php5-fpm',
  403. 'hhvm': 'hhvm',
  404. 'gd': 'php5-gd',
  405. 'gmp': 'php5-gmp',
  406. 'geoip': 'php5-geoip',
  407. 'intl': 'php5-intl',
  408. 'mbstring': 'php5',
  409. 'mcrypt': 'php5-mcrypt',
  410. 'memcache': 'php5-memcache',
  411. 'memcached': 'php5-memcached',
  412. 'mysql': 'php5-mysql',
  413. 'mysqlnd': 'php5-mysqlnd',
  414. 'mdb2': 'php-mdb2',
  415. 'mdb2-driver-mysql': 'php-mdb2-driver-mysql',
  416. 'mdb2-driver-pgsql': 'php-mdb2-driver-pgsql',
  417. 'pear': 'php-pear',
  418. 'pspell': 'php5-pspell',
  419. 'snmp': 'php5-snmp',
  420. 'soap': 'php-soap',
  421. 'seclib': 'php-seclib',
  422. 'ssh2': 'php5-ssh2',
  423. 'sqlite': 'php5-sqlite',
  424. 'svn': 'php5-svn',
  425. 'tidy': 'php5-tidy',
  426. 'tcpdf': 'php-tcpdf',
  427. 'twig': 'php5-twig',
  428. 'xcache': 'php5-xcache',
  429. 'xdebug': 'php5-xdebug',
  430. 'xsl': 'php5-xsl',
  431. 'xml': 'php5',
  432. 'zip': 'php5',
  433. 'redis': 'php5-redis',
  434. 'imagick': 'php5-imagick',
  435. 'suhosin': 'php5-suhosin',
  436. 'imap': 'php5-imap',
  437. 'adodb': 'php5-adodb',
  438. 'pgsql': 'php5-pgsql',
  439. 'ldap': 'php5-ldap',
  440. 'json': 'php5-json'
  441. },
  442. 'fpm': {
  443. 'conf': '/etc/php5/fpm/php-fpm.conf',
  444. 'ini': '/etc/php5/fpm/php.ini',
  445. 'pools': '/etc/php5/fpm/pool.d',
  446. 'service': 'php5-fpm',
  447. 'defaults': odict([
  448. ('global', odict([
  449. ('pid', '/var/run/php5-fpm.pid'),
  450. ('error_log', '/var/log/php5-fpm.log'),
  451. ])),
  452. ('include', '/etc/php5/fpm/pool.d/*.conf'),
  453. ]),
  454. },
  455. 'hhvm': {
  456. 'conf': '/etc/hhvm/server.ini',
  457. 'ini': '/etc/hhvm/php.ini',
  458. 'service': 'hhvm',
  459. 'defaults': {},
  460. 'server': odict([
  461. ('pid', '/var/run/hhvm/pid'),
  462. ('hhvm.server.port', '9000'),
  463. ('hhvm.server.type', 'fastcgi'),
  464. ('hhvm.server.default_document', 'index.php'),
  465. ('hhvm.log.use_log_file', 'true'),
  466. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  467. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  468. ]),
  469. 'php': odict([
  470. ('session.save_handler', 'files'),
  471. ('session.save_path', '/var/lib/hhvm/sessions'),
  472. ('session.gc_maxlifetime', '1440'),
  473. ('hhvm.log.level', 'Warning'),
  474. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  475. ('hhvm.log.runtime_error_reporting_level', '8191'),
  476. ('hhvm.mysql.typed_results', 'false'),
  477. ]),
  478. },
  479. 'cli': {
  480. 'ini': '/etc/php5/cli/php.ini',
  481. },
  482. 'apache2': {
  483. 'ini': '/etc/php5/apache2/php.ini',
  484. },
  485. 'xcache': {
  486. 'ini': '/etc/php5/mods-available/xcache.ini',
  487. 'defaults': {},
  488. },
  489. },
  490. }, grain="os"),
  491. }, merge=True) %}
  492. {% endif %}
  493. {% else %}
  494. {% set php = salt['pillar.get']('php:ng', {
  495. 'lookup': salt['grains.filter_by']({
  496. 'Debian': {
  497. 'pkgs': {
  498. 'php': 'php5',
  499. 'apc': 'php-apc',
  500. 'apcu': 'php5-apcu',
  501. 'cgi': 'php5-cgi',
  502. 'cli': 'php5-cli',
  503. 'cache-lite': 'php-cache-lite',
  504. 'console-table': 'php-console-table',
  505. 'dev': ['php5-dev','build-essential'],
  506. 'oauth': 'php5-oauth',
  507. 'apache2': 'libapache2-mod-php5',
  508. 'curl': 'php5-curl',
  509. 'gearman': 'php5-gearman',
  510. 'fpm': 'php5-fpm',
  511. 'ffmpeg': ['php5-ffmpeg', 'ffmpeg'],
  512. 'hhvm': 'hhvm',
  513. 'gd': 'php5-gd',
  514. 'gmp': 'php5-gmp',
  515. 'geoip': 'php5-geoip',
  516. 'gettext': 'php-gettext',
  517. 'geshi': 'php-geshi',
  518. 'intl': 'php5-intl',
  519. 'mbstring': 'php5',
  520. 'mcrypt': 'php5-mcrypt',
  521. 'memcache': 'php5-memcache',
  522. 'memcached': 'php5-memcached',
  523. 'mysql': 'php5-mysql',
  524. 'mysqlnd': 'php5-mysqlnd',
  525. 'mdb2': 'php-mdb2',
  526. 'mdb2-driver-mysql': 'php-mdb2-driver-mysql',
  527. 'mdb2-driver-pgsql': 'php-mdb2-driver-pgsql',
  528. 'pear': 'php-pear',
  529. 'pspell': 'php5-pspell',
  530. 'snmp': 'php5-snmp',
  531. 'seclib': 'php-seclib',
  532. 'soap': 'php-soap',
  533. 'ssh2': 'php5-ssh2',
  534. 'sqlite': 'php5-sqlite',
  535. 'svn': 'php5-svn',
  536. 'tidy': 'php5-tidy',
  537. 'tcpdf': 'php5-tcpdf',
  538. 'twig': 'php5-twig',
  539. 'xcache': 'php5-xcache',
  540. 'xdebug': 'php5-xdebug',
  541. 'xsl': 'php5-xsl',
  542. 'xml': 'php5',
  543. 'zip': 'php5',
  544. 'redis': 'php5-redis',
  545. 'imagick': 'php5-imagick',
  546. 'suhosin': 'php5-suhosin',
  547. 'imap': 'php5-imap',
  548. 'adodb': 'php5-adodb',
  549. 'pgsql': 'php5-pgsql',
  550. 'ldap': 'php5-ldap',
  551. 'json': 'php5-json'
  552. },
  553. 'fpm': {
  554. 'conf': '/etc/php5/fpm/php-fpm.conf',
  555. 'ini': '/etc/php5/fpm/php.ini',
  556. 'pools': '/etc/php5/fpm/pool.d',
  557. 'service': 'php5-fpm',
  558. 'defaults': odict([
  559. ('global', odict([
  560. ('pid', '/var/run/php5-fpm.pid'),
  561. ('error_log', '/var/log/php5-fpm.log'),
  562. ])),
  563. ('include', '/etc/php5/fpm/pool.d/*.conf'),
  564. ]),
  565. },
  566. 'hhvm': {
  567. 'conf': '/etc/hhvm/server.ini',
  568. 'ini': '/etc/hhvm/php.ini',
  569. 'service': 'hhvm',
  570. 'defaults': {},
  571. 'server': odict([
  572. ('pid', '/var/run/hhvm/pid'),
  573. ('hhvm.server.port', '9000'),
  574. ('hhvm.server.type', 'fastcgi'),
  575. ('hhvm.server.default_document', 'index.php'),
  576. ('hhvm.log.use_log_file', 'true'),
  577. ('hhvm.log.file', '/var/log/hhvm/error.log'),
  578. ('hhvm.repo.central.path', '/var/run/hhvm/hhvm.hhbc'),
  579. ]),
  580. 'php': odict([
  581. ('session.save_handler', 'files'),
  582. ('session.save_path', '/var/lib/hhvm/sessions'),
  583. ('session.gc_maxlifetime', '1440'),
  584. ('hhvm.log.level', 'Warning'),
  585. ('hhvm.log.always_log_unhandled_exceptions', 'true'),
  586. ('hhvm.log.runtime_error_reporting_level', '8191'),
  587. ('hhvm.mysql.typed_results', 'false'),
  588. ]),
  589. },
  590. 'cli': {
  591. 'ini': '/etc/php5/cli/php.ini',
  592. },
  593. 'apache2': {
  594. 'ini': '/etc/php5/apache2/php.ini',
  595. },
  596. 'xcache': {
  597. 'ini': '/etc/php5/mods-available/xcache.ini',
  598. 'defaults': {},
  599. },
  600. },
  601. 'RedHat': {
  602. 'pkgs': {
  603. 'php': 'php',
  604. 'apc': 'php-pecl-apc',
  605. 'apcu': 'php-pecl-apcu',
  606. 'cgi': 'php-cgi',
  607. 'cli': 'php-cli',
  608. 'composer': 'composer',
  609. 'oauth': 'php-oauth',
  610. 'curl': ['php-common', 'curl'],
  611. 'fpm': 'php-fpm',
  612. 'gd': 'php-gd',
  613. 'intl': 'php-intl',
  614. 'mbstring': 'php-mbstring',
  615. 'mcrypt': 'php-mcrypt',
  616. 'memcache': 'php-pecl-memcache',
  617. 'memcached': 'php-pecl-memcached',
  618. 'opcache': 'php-pecl-zendopcache',
  619. 'mysql': 'php-mysql',
  620. 'mysqlnd': 'php-mysqlnd',
  621. 'pear': 'php-pear',
  622. 'snmp': 'php-snmp',
  623. 'soap': 'php-soap',
  624. 'sqlite': 'php5-sqlite',
  625. 'xcache': 'php-xcache',
  626. 'xml': 'php-xml',
  627. 'zip': 'php',
  628. 'redis': 'php-redis',
  629. 'imagick': 'php-imagick',
  630. 'suhosin': 'php-suhosin',
  631. 'imap': 'php-imap',
  632. 'adodb': 'php-adodb',
  633. 'pgsql': 'php-pgsql',
  634. 'ldap': 'php-ldap',
  635. 'json': 'php-common',
  636. },
  637. 'fpm': {
  638. 'conf': '/etc/php-fpm.conf',
  639. 'ini': '/etc/php.ini',
  640. 'pools': '/etc/php-fpm.d',
  641. 'service': 'php-fpm',
  642. 'defaults': {
  643. 'global': {
  644. 'pid': '/var/run/php-fpm/php-fpm.pid',
  645. 'error_log': '/var/log/php-fpm/error.log',
  646. },
  647. 'include': '/etc/php-fpm.d/*.conf',
  648. },
  649. },
  650. 'cli': {
  651. 'ini': '/etc/php.ini',
  652. },
  653. 'xcache': {
  654. 'ini': '/etc/php.d/xcache.ini',
  655. },
  656. },
  657. 'Suse': {
  658. 'pkgs': {
  659. 'php': 'php5',
  660. 'apache2': 'apache2-mod_php5',
  661. 'cli': 'php5',
  662. 'oauth': 'php5-oauth',
  663. 'curl': 'php5-curl',
  664. 'fpm': 'php5-fpm',
  665. 'gd': 'php5-gd',
  666. 'intl': 'php5-intl',
  667. 'mbstring': 'php5-mbstring',
  668. 'mcrypt': 'php5-mcrypt',
  669. 'mysql': 'php5-mysql',
  670. 'pear': 'php5-pear',
  671. 'snmp': 'php5-snmp',
  672. 'soap': 'php5-soap',
  673. 'sqlite': 'php5-sqlite',
  674. 'xml': ['php5-xmlreader','php5-xmlwriter','php5-xmlrpc'],
  675. 'zip': 'php5-zip',
  676. 'suhosin': 'php5-suhosin',
  677. 'imap': 'php5-imap',
  678. 'adodb': 'php5-dba',
  679. 'pgsql': 'php5-pgsql',
  680. 'ldap': 'php5-ldap',
  681. 'json': 'php5-json',
  682. },
  683. 'fpm': {
  684. 'conf': '/etc/php-fpm.conf',
  685. 'ini': '/etc/php.ini',
  686. 'pools': '/etc/php-fpm.d',
  687. 'service': 'php-fpm',
  688. 'defaults': {
  689. 'global': {
  690. 'pid': '/var/run/php-fpm/php-fpm.pid',
  691. 'error_log': '/var/log/php-fpm/error.log',
  692. },
  693. 'include': '/etc/php-fpm.d/*.conf',
  694. },
  695. },
  696. 'cli': {
  697. 'ini': '/etc/php.ini',
  698. },
  699. },
  700. 'Arch': {
  701. 'pkgs': {
  702. 'php': 'php',
  703. 'cli': 'php',
  704. 'apcu': 'php-apcu',
  705. 'cgi': 'php-cgi',
  706. 'curl': 'curl',
  707. 'fpm': 'php-fpm',
  708. 'gd': 'php-gd',
  709. 'geoip': 'php-geoip',
  710. 'intl': 'php-intl',
  711. 'mcrypt': 'php-mcrypt',
  712. 'memcache': 'php-memcache',
  713. 'memcached': 'php-memcached',
  714. 'pear': 'php-pear',
  715. 'snmp': 'php-snmp',
  716. 'sqlite': 'php-sqlite',
  717. 'xcache': 'php-xcache',
  718. 'pgsql': 'php-pgsql',
  719. 'ldap': 'php-ldap',
  720. 'tidy': 'php-tidy',
  721. },
  722. 'fpm': {
  723. 'conf': '/etc/php/php-fpm.conf',
  724. 'ini': '/etc/php/php.ini',
  725. 'pools': '/etc/php/fpm.d',
  726. 'service': 'php-fpm',
  727. 'defaults': {
  728. 'global': {
  729. 'pid': '/run/php-fpm/php-fpm.pid',
  730. 'error_log': 'log/php-fpm.log',
  731. },
  732. 'include': '/etc/php/fpm.d/*.conf',
  733. },
  734. },
  735. 'cli': {
  736. 'ini': '/etc/php/php-cli.ini',
  737. },
  738. 'xcache': {
  739. 'ini': '/etc/php/conf.d/xcache.ini',
  740. },
  741. },
  742. }),
  743. 'fpm': {
  744. 'service': {
  745. 'enabled': True,
  746. 'opts': {},
  747. },
  748. 'config': {
  749. 'ini': {
  750. 'opts': {},
  751. 'settings': {},
  752. },
  753. 'conf': {
  754. 'opts': {},
  755. 'settings': {},
  756. },
  757. },
  758. 'pools': {
  759. 'default.conf': {
  760. 'enabled': False,
  761. 'opts': {},
  762. },
  763. },
  764. },
  765. 'hhvm': {
  766. 'service': {
  767. 'enabled': True,
  768. 'opts': {},
  769. },
  770. 'config': {
  771. 'server': {
  772. 'opts': {},
  773. 'settings': {},
  774. },
  775. 'php': {
  776. 'opts': {},
  777. 'settings': {},
  778. },
  779. },
  780. },
  781. 'cli': {
  782. 'ini': {
  783. 'opts': {},
  784. 'settings': {},
  785. }
  786. },
  787. 'apache2': {
  788. 'ini': {
  789. 'opts': {},
  790. 'settings': {},
  791. }
  792. },
  793. 'xcache': {
  794. 'ini': {
  795. 'defaults': {
  796. 'xcache-common': {
  797. 'extension': 'xcache.so',
  798. },
  799. 'xcache.admin': {
  800. 'xcache.admin.enable_auth': 'On',
  801. },
  802. 'xcache': {
  803. 'xcache.shm_scheme': '"mmap"',
  804. 'xcache.size': '60M',
  805. 'xcache.count': '1',
  806. 'xcache.slots': '8K',
  807. 'xcache.ttl': '0',
  808. 'xcache.gc_interval': '0',
  809. 'xcache.var_size': '4M',
  810. 'xcache.var_count': '1',
  811. 'xcache.var_slots': '8K',
  812. 'xcache.var_ttl': '0',
  813. 'xcache.var_maxttl': '0',
  814. 'xcache.var_gc_interval': '300',
  815. 'xcache.var_namespace_mode': '0',
  816. 'xcache.var_namespace': '""',
  817. 'xcache.readonly_protection': 'Off',
  818. 'xcache.mmap_path': '"/dev/zero"',
  819. 'xcache.coredump_directory': '""',
  820. 'xcache.coredump_type': '0',
  821. 'xcache.disable_on_crash': 'Off',
  822. 'xcache.experimental': 'Off',
  823. 'xcache.cacher': 'On',
  824. 'xcache.stat': 'On',
  825. 'xcache.optimizer': 'Off',
  826. },
  827. 'xcache.coverager': {
  828. 'xcache.coverager': 'Off',
  829. 'xcache.coverager_autostart': 'On',
  830. 'xcache.coveragedump_directory': '""',
  831. },
  832. },
  833. 'opts': {},
  834. 'settings': {},
  835. }
  836. },
  837. 'ini': {
  838. 'defaults': {
  839. 'PHP': {
  840. 'engine': 'On',
  841. 'short_open_tag': 'Off',
  842. 'asp_tags': 'Off',
  843. 'precision': 14,
  844. 'output_buffering': 4096,
  845. 'zlib.output_compression': 'Off',
  846. 'implicit_flush': 'Off',
  847. 'serialize_precision': 17,
  848. 'disable_functions': ['pcntl_alarm','pcntl_fork','pcntl_waitpid','pcntl_wait','pcntl_wifexited','pcntl_wifstopped','pcntl_wifsignaled',
  849. 'pcntl_wexitstatus','pcntl_wtermsig','pcntl_wstopsig','pcntl_signal','pcntl_signal_dispatch','pcntl_get_last_error','pcntl_strerror',
  850. 'pcntl_sigprocmask','pcntl_sigwaitinfo','pcntl_sigtimedwait','pcntl_exec','pcntl_getpriority','pcntl_setpriority'],
  851. 'zend.enable_gc': 'On',
  852. 'expose_php': 'On',
  853. 'max_execution_time': 30,
  854. 'max_input_time': 60,
  855. 'max_input_nesting_level': 64,
  856. 'max_input_vars': 1000,
  857. 'memory_limit': '128M',
  858. 'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
  859. 'display_errors': 'Off',
  860. 'display_startup_errors': 'Off',
  861. 'log_errors': 'On',
  862. 'log_errors_max_len': 1024,
  863. 'ignore_repeated_errors': 'Off',
  864. 'ignore_repeated_source': 'Off',
  865. 'report_memleaks': 'On',
  866. 'track_errors': 'Off',
  867. 'html_errors': 'On',
  868. 'variables_order': 'GPCS',
  869. 'request_order': 'GP',
  870. 'register_argc_argv': 'Off',
  871. 'auto_globals_jit': 'On',
  872. 'post_max_size': '8M',
  873. 'default_mimetype': '"text/html"',
  874. 'enable_dl': 'Off',
  875. 'file_uploads': 'On',
  876. 'upload_max_filesize': '2M',
  877. 'max_file_uploads': 20,
  878. 'allow_url_fopen': 'On',
  879. 'allow_url_include': 'Off',
  880. 'default_socket_timeout': 60
  881. },
  882. 'CLI Server': {
  883. 'cli_server.color': 'On'
  884. },
  885. 'Date': {
  886. 'date.timezone': 'America/New_York'
  887. },
  888. 'Pdo_mysql': {
  889. 'pdo_mysql.cache_size': 2000
  890. },
  891. 'mail function': {
  892. 'SMTP': 'localhost',
  893. 'mail.add_x_header': 'On'
  894. },
  895. 'SQL': {
  896. 'sql.safe_mode': 'Off'
  897. },
  898. 'ODBC': {
  899. 'odbc.allow_persistent': 'On',
  900. 'odbc.check_persistent': 'On',
  901. 'odbc.max_persistent': '-1',
  902. 'odbc.max_links': '-1',
  903. 'odbc.defaultlrl': 4096,
  904. 'odbc.defaultbinmode': 1
  905. },
  906. 'Interbase': {
  907. 'ibase.allow_persistent': 1,
  908. 'ibase.max_persistent': -1,
  909. 'ibase.max_links': -1,
  910. 'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
  911. 'ibase.dateformat': '"%Y-%m-%d"',
  912. 'ibase.timeformat': '"%H:%M:%S"'
  913. },
  914. 'MySQL': {
  915. 'mysql.allow_local_infile': 'On',
  916. 'mysql.allow_persistent': 'On',
  917. 'mysql.cache_size': '2000',
  918. 'mysql.max_persistent': -1,
  919. 'mysql.max_links': -1,
  920. 'mysql.connect_timeout': 60,
  921. 'mysql.trace_mode': 'Off'
  922. },
  923. 'MySQLi': {
  924. 'mysqli.max_persistent': -1,
  925. 'mysqli.allow_persistent': 'On',
  926. 'mysqli.max_links': -1,
  927. 'mysqli.cache_size': 2000,
  928. 'mysqli.default_port': 3306,
  929. 'mysqli.reconnect': 'Off'
  930. },
  931. 'mysqlnd': {
  932. 'mysqlnd.collect_statistics': 'On',
  933. 'mysqlnd.collect_memory_statistics': 'Off'
  934. },
  935. 'PostgreSQL': {
  936. 'pgsql.allow_persistent': 'On',
  937. 'pgsql.auto_reset_persistent': 'Off',
  938. 'pgsql.max_persistent': -1,
  939. 'pgsql.max_links': -1,
  940. 'pgsql.ignore_notice': 0,
  941. 'pgsql.log_notice': 0
  942. },
  943. 'Sybase-CT': {
  944. 'sybct.allow_persistent': 'On',
  945. 'sybct.max_persistent': -1,
  946. 'sybct.max_links': -1,
  947. 'sybct.min_server_severity': 10,
  948. 'sybct.min_client_severity': 10
  949. },
  950. 'bcmath': {
  951. 'bcmath.scale': 0
  952. },
  953. 'Session': {
  954. 'session.save_handler': 'files',
  955. 'session.use_strict_mode': 0,
  956. 'session.use_cookies': 1,
  957. 'session.use_only_cookies': 1,
  958. 'session.name': 'PHPSESSID',
  959. 'session.auto_start': 0,
  960. 'session.cookie_lifetime': 0,
  961. 'session.cookie_path': '/',
  962. 'session.serialize_handler': 'php',
  963. 'session.gc_probability': 0,
  964. 'session.gc_divisor': 1000,
  965. 'session.gc_maxlifetime': 1440,
  966. 'session.bug_compat_42': 'Off',
  967. 'session.bug_compat_warn': 'Off',
  968. 'session.cache_limiter': 'nocache',
  969. 'session.cache_expire': '180',
  970. 'session.use_trans_sid': 0,
  971. 'session.hash_function': 0,
  972. 'session.hash_bits_per_character': 5,
  973. 'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
  974. },
  975. 'MSSQL': {
  976. 'mssql.allow_persistent': 'On',
  977. 'mssql.max_persistent': -1,
  978. 'mssql.max_links': -1,
  979. 'mssql.min_error_severity': 10,
  980. 'mssql.min_message_severity': 10,
  981. 'mssql.compatibility_mode': 'Off',
  982. 'mssql.secure_connection': 'Off'
  983. },
  984. 'Tidy': {
  985. 'tidy.clean_output': 'Off'
  986. },
  987. 'soap': {
  988. 'soap.wsdl_cache_enabled': 1,
  989. 'soap.wsdl_cache_dir': '"/tmp"',
  990. 'soap.wsdl_cache_ttl': 86400,
  991. 'soap.wsdl_cache_limit': 5
  992. },
  993. 'ldap': {
  994. 'ldap.max_links': -1
  995. },
  996. },
  997. },
  998. }, merge=True) %}
  999. {% endif %}
  1000. {% endif %}