xampp 設定 – php.ini 翻譯與設定
每次剛灌完xampp通常會這麼設定
紀錄一下我的習慣
- 修改 httpd.conf
DocumentRoot “C:/xampp/htdocs” 改為
DocumentRoot “C:/xampp/htdocs/www”
我習慣用www包起來我寫的專案 - 若有固定IP要開放伺服器外連,修改httpd-xampp.conf ,
<LocationMatch “^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))”>
#Order deny,allow
Allow from all
#Deny from all
#Allow from ::1 127.0.0.0/8
#fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16
#fe80::/10 169.254.0.0/16#ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>
允許所有人使用。 - 修改php.ini (PHP 7 適用)
short_open_tag = On
open_basedir = 請指定
max_execution_time = 60; 每個腳本的最大執行時間, 按秒計.
max_input_time = 60 ; 每個腳本的最大讀取資料時間, 按秒計.
memory_limit = 800M; 一個腳本可使用記憶體的最大值
display_errors = On 遇到 PHP 語法解析錯誤,會顯示錯誤訊息。建議正式環境改為 Off
post_max_size = 200M
default_charset = “UTF-8”
max_input_vars = 100000 指定每次傳送最大的表單數量,如多少比筆<input type=”text”> 或註解掉
upload_max_filesize = 200M 允許上傳檔案的最大值.
date.timezone = Asia/Taipei
—————————————————————————-
php.ini 翻譯
http://mic1491.pixnet.net/blog/post/30159855-php.ini%E8%A8%AD%E5%AE%9A%E6%AA%94%E4%B8%AD%E6%96%87%E8%AA%AA%E6%98%8E
—————————————————————————-
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 |
;;;;;;;;;;;;;;;;;;; ; PHP.INI中文說明 ; ;;;;;;;;;;;;;;;;;;; ; 這個檔案是PHP安裝的預設配置檔案. ; 預設設定下, PHP是以程式開發為目的,而不是為了其它目的! ; 由於PHP在應用在您的網站之前必須考慮一些安全問題, ; 所以請您參考php.ini-recommended(被推薦的)中相關參數的設定, ; 另外,您也可以在以下網站獲得幫助:http://php.net/manual/en/security.php. ;;;;;;;;;;;;;;;; ; 關於這個檔案 ; ;;;;;;;;;;;;;;;; ; 這個檔案控制著PHP的許多方面,為了能讓PHP正常讀取它,這個檔案必須被命名為"php.ini". ; PHP運行時依次在以下路徑中尋找這個檔案:目前工作目錄,環境變量PHPPRC指定路徑,編譯時 ; 指定的路徑. ; 在Windows下,編譯時指定路徑就是Windows的安裝目錄, ; 在命令提示符下,可以用-c的參數來替代php.ini的查找路徑. ; ; 這個配置檔案的設定極其簡單. 以空白字元和分號開始的行被忽略(可能您已經想到了^_^), ; 雖然它們可能在將來有意義... ; ; 您在配置php.ini時,請使用以下的指定語法: ; 指示 = 值 ; 注意:指示標識符是區分大小寫的,例如foo=bar和FOO=bar是不同的. ; 值可以是一個字元,一個數字,一個PHP常量(例如E_ALL和M_PI), ; 一個INI常量(例如On,Off,True,False,Yes,No和None),一個表達式(例如E_ALL & ~E_NOTICE), ; 或是用引號括起來的字元串(例如"foo"). ; ; INI檔案中的表達式被限製為下面的運算符: ; | 代表 OR ; & 代表 AND ; ~ 代表 NOT(except) ; ! 代表 NOT ; ; 其中佈爾值可用1,On,True或Yes表示設為開的狀態, ; 可用0,Off,False或No表示設為關的狀態. ; ; 一個空字元串可以以在等號後不寫任何東西的方法表示,或者用None表示.例如: ; ; foo = ; 將foo值設定為空字元串 ; foo = none ; 將foo值設定為空字元串 ; foo = "none" ; 將foo值設定為字元串'none' ; ; 如果您在值設定中使用常量,並且這些常量屬於動態調入的擴展庫(PHP擴展或Zend擴展), ; 那麼,您只能在調入這些擴展庫之後再使用這些常量. ; ; 所有在 php.ini-dist 檔案裡設定的值與內建的預設值相同(就是說,如果 php.ini ; 沒被使用或者你刪掉了這些行,預設值與之相同). ;;;;;;;;;;; ; 語言選項; ;;;;;;;;;;; ; 是否使PHP腳本語言在Apache伺服器下有效. engine = On ; 是否允許使用<? ?>這種簡單的標識格式,當設定為Off時只有<?php ?>這種標識能被識別. short_open_tag = On ; 是否允許使用ASP風格的標識格式<% %>. asp_tags = Off ; 浮點類型數顯示時的有效位數. precision = 12 ; 是否開啟2000年適應 (可能在非2000年適應的瀏覽器中導致問題). y2k_compliance = Off ; 輸出緩存允許你甚至在輸出正文內容之後發送header標頭(包括cookies), 但這樣會使速度有些下降. ; 您可以在運行時使用輸出緩存功能,也可以把output_buffering的值設為On使所有檔案的輸出緩存打 ; 開.您也可以使用一個數值(單位是byte)作為輸出緩存上限,例如: output_buffering=4096. output_buffering = 4096 ; 您可以把腳本輸出到一個函數, ; 字元編碼將會自動地轉換為您指定的編碼,這樣可能會對您處理以及記錄日誌有所幫助. ; 例如,如果您把 output_handler 設為 ob_iconv_handler, ; 輸出會為支援gzip或deflate編碼的瀏覽器設一個輸出處理器自動地開啟輸出緩衝. ; ; 說明: 您不必完全依照這個檔案中的設定去編寫腳本程式,相反地,您應該使用ob_start()函數 ; 具體設定,如果您在不瞭解正在被執行的腳本的情況下使用這個INI檔案中的配置,就有 ; 可能引起一些問題. ; 您不能同時使用"ob_gzhandler" 和 "zlib.output_compression". ;output_handler = ; 輸出會為支援壓縮使用了zlib庫 ; 這個選項的有效值是'off','on',或者一個具體的值,預設值是4KB. ; 說明: 您可以增大數值來增加執行效率. ; 您必須使用zlib.output_handler來替代標準的output_handler否則輸出緩存會失效. ; . zlib.output_compression = Off ; 如果zlib.output_compression被設為On,您就不能再額外地指定輸出的值. ; 在不同在設定下,結果是一樣的. ;zlib.output_handler = ; 強制更新使PHP輸出層在每個輸出塊之後自動更新自身資料. ; 這等效於在執行每個print()或echo()或每個HTML塊後調用flush()函數. ; 開啟這項設定可能會在運行時導致嚴重的衝突,建議僅在debug過程中開啟. implicit_flush = Off ; 得到一個串行變量,並將其轉化為PHP值,可能為整型,雙精度,字元串,數組,或對像. ; 如果些函數發現了未定義的或類或參數,將會出現提示,如果您想使用這一函數,請設定 ; 這個功能. unserialize_callback_func= ; 是否強迫函數調用時按引用傳遞參數,在將來的PHP/Zend中,這一功能很可能不會再被支援, ; 建議您把此項設為Off,並在腳本中用函數聲明此變量,以便在將來的PHP下正常運行. allow_call_time_pass_reference = Off ; 安全模式 ; 是否啟用安全模式 safe_mode = Off ; 預設設定為Off,在開啟檔案時,安全模式會作一個UID對比檢查,如果設定為On,則作GID對比. safe_mode_gid = Off ; 如果PHP在安全模式下運行,UID/GID檢查將在這個命令指定的檔案夾及其子檔案夾中進行. safe_mode_include_dir = ; 如果PHP在安全模式下運行,system()和其它執行系統程式的函數都只能執行這個指令所指定 ; 的目錄 safe_mode_exec_dir = ; 改變某些環境變量可能是一個有效的安全措施. ; 這個指令包括了一個含有符號的前綴.在安全模式下,會員只能改變或設定以這裡指定的前綴 ; 的名字的環境變量. ; 說明: 如果不指定前綴,PHP會允許會員任意修改環境變量. safe_mode_allowed_env_vars = PHP_ ; 這個指令包含了一個符號,使得會員不能使用putenv()函數修改環境變量. ; 即使safe_mode_allowed_env_vars設定為允許會員修改,這些環境變量也會受到保護. safe_mode_protected_env_vars = LD_LIBRARY_PATH ; 如果設定了open_basedir,將會使所有被定義的目錄及其子目錄的操作受到限制,這一指令在 ; 每一個目錄和每一個虛擬主機構造檔案中著很大的作用.不論safe_mode被設定為On或是Off, ; 這個指令都不會受到任何影響. ;open_basedir = ; 這個指令允許您基於安全原因限制某些函數的使用. ; 如果您想禁用多個函數,可以在函數間用逗號隔開. 同樣地, ;不論safe_mode被設定為On或是Off,這個指令都不會受到任何影響. disable_functions = ; 語法以高亮度模式顯示的色彩.所有能被<font color="??????">接受的東西就可以運行. ;highlight.string = #DD0000 ;highlight.comment = #FF9900 ;highlight.keyword = #007700 ;highlight.bg = #FFFFFF ;highlight.default = #0000BB ;highlight.html = #000000 ;;;;;;;;;;;; ; 雜項設定 ; ;;;;;;;;;;;; ; 是否承認您的伺服器上安裝了PHP這一事實(例如通過附加簽名到WEB伺服器上) ; 這個指令不會引起安全問題,但它使檢查你的伺服器上是否安裝了PHP有了可能. expose_php = On ;;;;;;;;;;;; ; 資源限制 ; ;;;;;;;;;;;; max_execution_time = 15 ; 每個腳本的最大執行時間, 按秒計. max_input_time = 60 ; 每個腳本的最大讀取資料時間, 按秒計. memory_limit = 8M ; 一個腳本可使用記憶體的最大值 (這裡是8MB). ;;;;;;;;;;;;;;;;;; ; 錯誤控制和記錄 ; ;;;;;;;;;;;;;;;;;; ; 錯誤報告是按比特記的,或者將數字加起來得到想要的錯誤報告等級. ; E_ALL - 所有的錯誤和警告. ; E_ERROR - 運行時的嚴重錯誤. ; E_WARNING - 運行時的警告(並不是非常嚴重的). ; E_PARSE - 編譯時解析錯誤. ; E_NOTICE - 運行時提醒(這些經常是是你的代碼的bug引起的, ; 也可能是有意的行為造成的(如基於未初始化的變量自動初始化為一個 ; 空字元串而使用一個未初始化的變量). ; E_CORE_ERROR - 發生於PHP啟動時初始化過程中的致命錯誤. ; E_CORE_WARNING - 發生於PHP啟動時初始化過程中的警告(非致命性錯). ; E_COMPILE_ERROR - 編譯時致命性錯誤. ; E_COMPILE_WARNING - 編譯時警告(非致命性錯). ; E_USER_ERROR - 會員產生的出錯消息. ; E_USER_WARNING - 會員產生的警告消息. ; E_USER_NOTICE - 會員產生的提醒消息. ; ; 例子: ; ; - error_reporting = E_ALL & ~E_NOTICE 顯示所有的錯誤,除了提醒. ; ; - error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR 僅顯示錯誤. ; error_reporting = E_ALL & ~E_NOTICE ; 顯示錯誤(作為輸出的一部分).在WEB網站上,建議您關掉這個功能,並用錯誤日誌的方式來代替. ; 如果開啟此功能可能會給您帶來安全問題,例如檔案在伺服器上的路徑和您的資料庫或其它訊息. ; 不過在Debug過程中,開啟此項會給調試程式帶來極大的方便. display_errors = On ; 如果display_startup_errors設定為Off,即使display_errors被設定成On, ; 在PHP啟動過程中的錯誤也不會被顯示.如果不是在Debug過程中,建議您關閉此項. display_startup_errors = On ; 在日誌檔案中記錄錯誤(伺服器日誌,stderr標準錯誤輸出, 或者error_log (下面的)). ; 正如上面說明的那樣,強烈建議你在最終發表的web網站時以日誌方式記錄錯誤. log_errors = Off ; 設定錯誤日誌檔案最大值.預設大小是1024M. log_errors_max_len = 1024 ; 不記錄重複的訊息.在ignore_repeated_source被設為On前,重複的訊息一定發生在同一文 ; 件的同一行 ignore_repeated_errors = Off ; 忽略重複多次的訊息.如果ignore_repeated_source被設為On,您將不能記錄不同檔案或不同行 的相同訊息. ignore_repeated_source = Off ; 如果此命令設為Off,記憶體溢出將不會被顯示. ; 而這只在Debug, 並且error reporting中包含E_WARNING時才有意義. report_memleaks = On ; 是否在$php_errormsg中存儲錯誤/警告訊息(布爾). track_errors = Off ; 是否在錯誤訊息中包含HTML語法錯誤. html_errors = On ; 如果您已經讓PHP記錄HTML錯誤,並想通過在錯誤頁面上的按這裡來獲得詳細訊息, ; 您可以從http://www.php.net/docs.php下載一個文件, ; 並且修改docref_root來使用這個文件,這個值必須以'/'開頭,您也必須指定該文件的副檔名. ;docref_root = /phpmanual/ ;docref_ext = .html ; 在錯誤訊息輸出前的字元. ;error_prepend_string = "<font color=ff0000>" ; 在錯誤訊息輸出後的字元. ;error_append_string = "</font>" ; 用於記錄錯誤日誌的指定檔案. ;error_log = filename ; 用系統日誌記錄錯誤(NT,XP,w2k下的事件觀看器,WIN95和WIN98下無效). ;error_log = syslog ;;;;;;;;;;;; ; 資料處理 ; ;;;;;;;;;;;; ; ; 說明 - track_vars 在PHP 4.0.3中是一直啟動的 ; 在PHP中分隔URL的符號,預設是 "&". ;arg_separator.output = "&" ; 在變量中插入URL的分隔符號,預設是 "&". ; 說明: 任何字元在這裡都是作為分隔符的! ;arg_separator.input = ";&" ; 這條指示描述了PHP記錄GET,POST,Cookie,Environment和Built-in這些變量的順序. ; 以G,P,C,E和S代表,通常以EGPCS或GPC的方式引用,按從左到右記錄,最新的記錄覆蓋較舊的. variables_order = "EGPCS" ; 是否將這些 EGPCS 變量註冊為全局變量. ; 若你不想讓會員資料不在全局範圍內混亂的話,你可以想關閉它. ; 這和 track_vars 連起來用更有意義 — 這樣你可以通過$HTTP_*_VARS[] 數組瀏覽所有的GPC變量. ; 建議您儘量不使用全局變量,因為它有可能引起安全問題,所以這個指令是不被推薦的. register_globals = On ; 是否啟用argv和argc變量(這裡argv為數組,argc為變量數). ; 如果您不使用這些變量,您可以設為Off來增加PHP的執行效率. register_argc_argv = Off ; PHP能接收POST資料的最大值. post_max_size = 4M ; 不推薦您使用此指令,推您使用variables_order來代替. gpc_order = "GPC" ;;;;;;;;;;;; ; 魔術引用 ; ;;;;;;;;;;;; ; 是否對引入的GET/POST/Cookie資料啟用魔術引用. magic_quotes_gpc = On ; 是否對運行時產生的資料啟用魔術引用,例如用SQL搜尋得到的資料,用exec()函數得到的資料等. magic_quotes_runtime = Off ; 是否使用Sybase形式的魔術引用(即用'代替''). magic_quotes_sybase = On ; 在PHP文件前的後自動填加檔案. auto_prepend_file = auto_append_file = ; 像4.0b4一樣,PHP總是預設地在"Content-type:"頭標輸出一個字元的編碼方式 ; 只要設定為空,就會取消這個字元了.PHP的內建預設值是text/html. default_mimetype = "text/html" ;default_charset = "iso-8859-1" ; 是否一直使用$HTTP_RAW_POST_DATA變量. always_populate_raw_post_data = Off ; 是否允許處理PHP腳本以外的HTTP請求. ; 如果您想獲得這些請求的資料, 您必須同時設定always_populate_raw_post_data變量. ;allow_webdav_methods = On ;;;;;;;;;;;; ; 路徑設定 ; ;;;;;;;;;;;; ; UNIX伺服器使用如下路徑: "/path1:/path2" ;include_path = ".:/php/includes" ; ; Windows伺服器使用如下路徑: "path1;path2" ;include_path = ".;c:phpincludes" ; PHP檔案的根目錄, 僅在非空時有效,如果PHP被設定為安全模式,PHP不會處理此目錄以外檔案. doc_root = ; 在使用/~username動工開啟腳本時,PHP尋找該腳本的路徑,同樣地僅在非空時有效. user_dir = ; 存放可加載的擴展庫(模塊)目錄的路徑. extension_dir = ./ ; 是否啟用dl()函數.在多線程的服務上(如IIS和Zeus)dl()函數不能很好的工作, ; 在多線程服務上該指令預設被禁止. enable_dl = On ; 在很多伺服器上,以CGI形式運行PHP來提高安全性能.預設設定下,PHP設其為On. ; 您可以在這裡關掉它,但關掉以後是有風險的.但在IIS下您則可以毫無風險的關掉它, ; 事實上,在IIS下您必須關掉它. ; cgi.force_redirect = 1 ; 如果cgi.force_redirect功能開啟,並且您不是在Apache或Netscape(iPlanet)伺服器下運行, 您可能須要設定一個環境變量名,PHP將尋找此變量來確定可以繼續執行,設定此變量可能會引起 安全問題,避免的方法是先弄清楚您在作什麼~~~ ; cgi.redirect_status_env = ; ; 此選項提供了在IIS伺服器下的智能化安全解決風格,如果在IIS下請設為On,目前不支援Apache ; 伺服器(2002年3月17日),預設值是0. ; fastcgi.impersonate = 1; ; 在發送HTTP響應時cgi.rfc2616_headers告訴PHP使用哪種headers. ; 如果設為0,PHP的發送情況是被Apache所支援的,如果設為1,PHP將發送自適應的RFC2616headers. ; 在IIS下,請設其值為1,預設值是0. ;cgi.rfc2616_headers = 0 ;;;;;;;;;;;; ; 檔案上傳 ; ;;;;;;;;;;;; ; 是否允許以HTTP方式上傳檔案. file_uploads = On ; 以HTTP方式上傳檔案的臨時目錄 (未指定時使用系統預設). ;upload_tmp_dir = ; 允許上傳檔案的最大值. upload_max_filesize = 2M ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Fopen wrappers(這個俺不會譯5555~) ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; 是否允許把URLs(如http://和ftp://)當作檔案處理. allow_url_fopen = On ; 指定一個匿名FTP瀏覽密碼(例如您的電子信箱) ;from="Neter@Neter.CN" ; 指定User-Agent字元串(User-Agent是啥呀?會員代理?55555555~) ; user_agent="PHP" ; 預設連接超時時間(以秒計). default_socket_timeout = 60 ; 如果您的腳本程式不是在蘋果機等作業系統下,而只是運行在unix或者win32系統下, ; 開啟這個變量將使PHP自動地檢查已結束的那些字元變量以便fgets()函數和file()函數 ; 不受限制的表達. ; auto_detect_line_endings = Off ;;;;;;;;;;;; ; 動態擴展 ; ;;;;;;;;;;;; ; ; 如果您想讓動態擴展庫能夠自動的被加載,請使用下面的語法. ; ; extension=modulename.extension ; ; 例如在Windows下: ; ; extension=msql.dll ; ; 在UNIX下: ; ; extension=msql.so ; ; 注意後面的值只是模塊的名字,並不包含該模塊所在的目錄,您應該用上面的extension_dir ; 來指示指定擴展庫的路徑. ;Windows擴展 ;注意:PHP已經內建了對MySQL和ODBC支援,所以不必再為其配置任何dll擴展. ; ;extension=php_bz2.dll ;extension=php_cpdf.dll ;extension=php_crack.dll ;extension=php_curl.dll ;extension=php_db.dll ;extension=php_dba.dll ;extension=php_dbase.dll ;extension=php_dbx.dll ;extension=php_domxml.dll ;extension=php_exif.dll ;extension=php_fbsql.dll ;extension=php_fdf.dll ;extension=php_filepro.dll ;extension=php_gd.dll ;extension=php_gd2.dll ;extension=php_gettext.dll ;extension=php_hyperwave.dll ;extension=php_iconv.dll ;extension=php_ifx.dll ;extension=php_iisfunc.dll ;extension=php_imap.dll ;extension=php_interbase.dll ;extension=php_java.dll ;extension=php_ldap.dll ;extension=php_mbstring.dll ;extension=php_mcrypt.dll ;extension=php_mhash.dll ;extension=php_mime_magic.dll ;extension=php_ming.dll ;extension=php_mssql.dll ;extension=php_msql.dll ;extension=php_oci8.dll ;extension=php_openssl.dll ;extension=php_oracle.dll ;extension=php_pdf.dll ;extension=php_pgsql.dll ;extension=php_printer.dll ;extension=php_shmop.dll ;extension=php_snmp.dll ;extension=php_sockets.dll ;extension=php_sybase_ct.dll ;extension=php_w32api.dll ;extension=php_xmlrpc.dll ;extension=php_xslt.dll ;extension=php_yaz.dll ;extension=php_zip.dll ;;;;;;;;;;;; ; 模塊設定 ; ;;;;;;;;;;;; [系統日誌] ; 是否定義各種系統日誌變量(如$LOG_PID,$LOG_CRON等).關掉這個指令將會提高效率. ; 您可以在運行時使用define_syslog_variables()函數來定義這些變量. define_syslog_variables = Off [郵件功能] ; 僅在Windows下. SMTP = localhost ; 僅在Windows下. sendmail_from = Administrator@localhost.com ; 僅在Unix下.您也可以指定參數(預設值是: "sendmail -t -i"). ;sendmail_path = [Java] ;java.class.path = .php_java.jar ;java.home = c:jdk ;java.library = c:jdkjreinhotspotjvm.dll ;java.library.path = . [SQL] sql.safe_mode = Off [ODBC] ;odbc.default_db = Not yet implemented ;odbc.default_user = Not yet implemented ;odbc.default_pw = Not yet implemented ; 是否允許持續連接. odbc.allow_persistent = On ; 是否在重用前檢查連接可用性. odbc.check_persistent = On ; 允許持續連接的最大值.-1代表無限制. odbc.max_persistent = -1 ; 允許連接的最大值(持續連接和非持續連接的和).-1代表無限制. odbc.max_links = -1 ; 控制LONG類型的字段.返回變量的大小(比特).0代表不控制. odbc.defaultlrl = 4096 ; 控制二進制資料.0不控制,1保持,2轉換成字元. ; 可參見有關odbc_binmode和odbc_longreadlen的文件 ; 以得到uodbc.defaultlrl和uodbc.defaultbinmode的解釋. odbc.defaultbinmode = 1 [MySQL] ; 是否允許持續連接. mysql.allow_persistent = On ; 允許持續連接的最大值.-1代表無限制. mysql.max_persistent = -1 ; 允許連接的最大值(持續連接和非持續連接的和).-1代表無限制. mysql.max_links = -1 ; mysql_connect()函數的預設端口.如不設定,mysql_connect()將使用$MYSQL_TCP_PORT或者 ; 在/etc/services下的mysql-tcp或者編譯定義的MYSQL_PORT(nuix)依次搜尋,而在Win32下,將 ; 僅檢查MYSQL_PORT. mysql.default_port = 3306 ; 用於本地MySql連接的預設socket,為空時,使用內建值. mysql.default_socket = MySql ; mysql_connect()連接的預設主機(安全模式下無效). mysql.default_host = localhost ; mysql_connect()連接時的預設會員名稱(安全模式下無效). mysql.default_user = root ; mysql_connect()連接時的預設密碼(安全模式下無效). ; 注意,在這裡使用密碼十分危險,因為任何有PHP權限的會員都可以通過運行'echo get_cfg_var("mysql.default_password")' ; 的方法來獲得該密碼,當然,任何有瀏覽權限的會員也可以得到此密碼. mysql.default_password = ; 連接超時的最大值(以秒計).-1代表無限制. mysql.connect_timeout = -1 ; 鑑定報告模式.如果此模式被啟動(即設為On),關於table/index和MYSQL錯誤將會被列出. mysql.trace_mode = Off [mSQL] ; 是否允許持續連接. msql.allow_persistent = On ; 允許持續連接的最大值.-1代表無限制. msql.max_persistent = -1 ; 允許連接最大值(持續連接與非持續連接的和).-1代表無限制. msql.max_links = -1 [PostgresSQL] ; 是否允許持續連接. pgsql.allow_persistent = On ; 是否使用pg_pconnect()函數檢查中斷的持續連接.Need a little overhead(55555俺又不懂了). pgsql.auto_reset_persistent = Off ; 允許持續連接的最大值. -1代表無限制. pgsql.max_persistent = -1 ; 允許連接的最大值(持續連接與非持續連接的和).-1代表無限制. pgsql.max_links = -1 ; 是否忽略PostgreSQL的返回訊息. pgsql.ignore_notice = 0 ; 是否記錄PostgreSQL的返回訊息. ; 僅當pgsql.ignore_notice=0時,模塊才能記錄該訊息. pgsql.log_notice = 0 [Sybase] ; 是否允許持續連接. sybase.allow_persistent = On ; 允許持續連接的最大值.-1代表無限制. sybase.max_persistent = -1 ; 允許連接的最大值(持續連接與非持續連接的和).-1代表無限制. sybase.max_links = -1 ;sybase.interface_file = "/usr/sybase/interfaces" ; 顯示錯誤的最低嚴重性. sybase.min_error_severity = 10 ; 顯示訊息的最低嚴重性. sybase.min_message_severity = 10 ; 與舊的版本(PHP3.0)兼容.如果設為On,PHP將根據它們的Sybase類型自動地賦值到結果中, ; 而不是把它們全當作字元串處理,此模式在將來不再被支援,所以儘量對代碼進行修改,並 ; 關掉這項. sybase.compatability_mode = Off [Sybase-CT] ; 是否允許持續的連接. sybct.allow_persistent = On ; 允許持續連接的最大值.-1代表無限制. sybct.max_persistent = -1 ; 允許連接的最大值(持續連接與非持續連接的和).-1代表無限制. sybct.max_links = -1 ; 伺服器訊息最小顯示量. sybct.min_server_severity = 10 ; 客戶訊息最小顯示量. sybct.min_client_severity = 10 [dbx] ; 通過對dbx.colnames_case的設定,返回的數組名能夠轉換成兼容的值. ; "unchanged" (在不設定時的預設值) ; "lowercase" (小寫) ; "uppercase" (大寫) ; 推薦不區分大小寫字母,但是由於兼容性的限制我們不得不把大小寫區分開. dbx.colnames_case = "unchanged" [bcmath] ; 用於所有bcmath函數的10十進制數小數的個數. bcmath.scale = 0 [browscap] ;browscap = extra/browscap.ini [Informix] ; ifx_connect()的預設主機(安全模式下無效). ifx.default_host = ; ifx_connect()的預設會員(安全模式下無效). ifx.default_user = ; ifx_connect()的預設密碼(安全模式下無效). ifx.default_password = ; 是否允許持續連接. ifx.allow_persistent = On ; 允許持續連接的最大值.-1代表無限制. ifx.max_persistent = -1 ; 允許連接的最大值(持續連接與非持續連接的和).-1代表無限制. ifx.max_links = -1 ; 若開啟,select狀態符將返回一個byte blobs而不是它的ID. ifx.textasvarchar = 0 ; 若開啟,select狀態符將返回一個text content而不是它的ID. ifx.byteasvarchar = 0 ; 從固定長度的字元列裡分離出空格.可能對Informix SE會員有效. ifx.charasvarchar = 0 ; 若開啟, text和byte blobs的內容被導出到一個檔案,而不是儲存在記憶體中. ifx.blobinfile = 0 ; NULL(空)被作為空字段返回,除非,這裡被設為1,這種情況下(為1)NULL作為字串NULL返回. ifx.nullformat = 0 [Session] ; 用於儲存/取得取資料的控制方式. session.save_handler = files ; session的儲存路徑. ; 說明1: PHP不會建立這個檔案夾,您必須自行建立. ; ; 說明2: 如果您使用子檔案夾進行存儲,請檢查下面的路徑. session.save_path = /tmp ; 是否使用cookies. session.use_cookies = 1 ; 這個選項能夠使會員避免由於session名被作為URLs的一部分顯示而受到的攻擊. ; 預設值是0. ; session.use_only_cookies = 1 ; session的名稱(同時作為cookie的名稱). session.name = PHPSESSID ; 是否在請求開始時初始化session. session.auto_start = 0 ; cookie的儲存時間(以秒計),設為0時,瀏覽器關閉時不再儲存. session.cookie_lifetime = 0 ; cookie的有效路徑. session.cookie_path = / ; cookie的有效域. session.cookie_domain = ; 控制連續的資料.PHP是PHP資料的標準控制器. session.serialize_handler = php ; 定義'garbage collection'(碎片整理)程序的初始化比率 ; 這個比率是通過gc_probability/gc_dividend算出的. ; e.g. 1/100 means 1%. session.gc_probability = 1 session.gc_dividend = 100 ; 在指定的秒數後,存儲的資料將會被看作'碎片'並且被碎片整理程序清理掉. ; 警告: 您的檔案系統會定期的存儲資料,FAT系統除外.所以應該使用特別的方法來刪除sessions. session.gc_maxlifetime = 1440 ; 說明: 如果您使用檔案夾來存儲session檔案(觀看session.save_path中的設定), ; 碎片整理不會自動的運行,您必須通過其它方法整理這些碎片. ; 例如下面的方法和把session.gc_maxlifetime設成1440(1440秒=24分)是等效的. ; cd /path/to/sessions; find -cmin +24 | xargs rm ; 在PHP4.2及更早的版本中沒有正式的檔案允許您初始一個處於全局的session變量,即使是在 ; register_globals被禁用的情況下.PHP4.3及以後版本中,如果此功能被使用,PHP提醒您. ; 您可以對此功能和警告訊息單獨禁用,此時,如果bug_compat_42是啟動的,僅會顯示警告訊息. session.bug_compat_42 = 1 session.bug_compat_warn = 1 ; 檢查HTTP引用使額外包含於URLs中的ids無效. ; HTTP_REFERER應該包含有效的session字段作為子鏈. session.referer_check = ; 從檔案中讀取字元的大小. session.entropy_length = 0 ; 在這裡指定session id. session.entropy_file = ;session.entropy_length = 16 ;session.entropy_file = /dev/urandom ; 設定為{nocache,private,public,}來決定HTTP的緩存問題, ; 或者不進行設定來避免發送明顯的headers. session.cache_limiter = nocache ; 文件在指定時間(以分計)後過期. session.cache_expire = 180 ; 預設情況下不支援過渡sid.使用此功能時您會收到警告訊息. ; 使用過渡sid是有風險的.因為: ; ; - 會員可以發送包含處於啟動狀態的session ID的URL給其它人. ; ; - 包含處於啟動狀態的session ID的URL會存在於容易接近的公共電腦裡. ; ; - 會員可以通過使用存儲於瀏覽器歷史記錄或書籤中相同的session ID來瀏覽您的網站. ; session.use_trans_sid = 0 ; 重寫URL時將從定義的HTML標籤中尋找form/fieldset是特殊的,如果您在這裡使用它們, ; 就會附;加一個隱藏的<input>,其訊息不同與其它的對URLs的附加.如果您想符合XHTML, ; 刪除form記錄.注意:所有有效的命令必須包含一個"="號,即使命令後面沒有具體值. url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset=" [MSSQL] ; 是否允許持續連接. mssql.allow_persistent = On ; 允許持續連接的最大值.-1表示無限制. mssql.max_persistent = -1 ; 允許連接的最大值(持續連接與非持續連接的和).-1表示無限制. mssql.max_links = -1 ; 顯示最小錯誤嚴重性. mssql.min_error_severity = 10 ; 顯示最小訊息重要性. mssql.min_message_severity = 10 ; 是否開啟與舊的PHP 3.0兼容的模式. mssql.compatability_mode = Off ; 有效範圍0 - 2147483647.預設值是4096. ;mssql.textlimit = 4096 ; 有效範圍0 - 2147483647.預設值是4096. ;mssql.textsize = 4096 ; 限制每一批中的記錄數量.設為0時表示所有記錄記錄在一批中. ;mssql.batchsize = 0 ; 當連接到伺服器時使用NT驗證. mssql.secure_connection = Off ; 指定最大程序數.預設是25 ;mssql.max_procs = 25 [Assertion] ; Assert(expr);預設值是啟動的.(俺不行了,這組指令譯不過來了55555) ;assert.active = On ; Issue a PHP warning for each failed assertion. ;assert.warning = On ; Don't bail out by default. ;assert.bail = Off ; User-function to be called if an assertion fails. ;assert.callback = 0 ; Eval the expression with current error_reporting(). Set to true if you want ; error_reporting(0) around the eval(). ;assert.quiet_eval = 0 [Ingres II] ; 是否允許持續連接. ingres.allow_persistent = On ; 允許持續連接在最大值. -1代表無限制. ingres.max_persistent = -1 ; 允許連接的最大值.-1代表無限制. ingres.max_links = -1 ; 預設的database(格式是: [node_id::]dbname[/srv_class]). ingres.default_database = ; 預設會員. ingres.default_user = ; 預設密碼. ingres.default_password = [Verisign Payflow Pro] ; 預設的Payflow Pro伺服器. pfpro.defaulthost = "test-payflow.verisign.com" ; 伺服器的預設端口. pfpro.defaultport = 443 ; 預設的超時時間(以秒計). pfpro.defaulttimeout = 30 ; 預設代理伺服器IP位址(如果須要). ;pfpro.proxyaddress = ; 預設代理伺服器端口. ;pfpro.proxyport = ; 預設的登入名. ;pfpro.proxylogon = ; 預設的登入密碼. ;pfpro.proxypassword = [Sockets] ; 是否使用系統的read()功能來替代php_read(). sockets.use_system_read = On [com] ; 指向包含GUIDs,IIDs或典型靜態庫檔案的檔案名稱的檔案的路徑. ;com.typelib_file = ; 是否允許調用分佈式的COM檔案 ;com.allow_dcom = true ; 是否自動把組成典型靜態庫檔案的常量註冊到com_load()函數. ;com.autoregister_typelib = true ; 是否區分常量的大小寫 ;com.autoregister_casesensitive = false ; 是否在有重複的常量出現時顯示錯誤 ;com.autoregister_verbose = true [Printer] ;printer.default_printer = "" [mbstring] ; 語言選擇. ;mbstring.language = Chinese ; 語言/腳本的編碼. ; 某些編碼不能作為本地的語言編碼,例如SJIS, BIG5, ISO-2022-. ;mbstring.internal_encoding = GB2312 ; http輸入編碼. ;mbstring.http_input = auto ; http輸出編碼.mb_output_handler必須註冊為函數的輸出緩存. ;mbstring.http_output = SJIS ; 是否根據mbstring.internal_encoding的設定自動翻譯編碼. 把這項設為On可以把輸入字元 ; 轉換為設定的編碼語言. ; 說明: 一定不要使用這項功能編譯靜態庫檔案和某些軟體. ; ;mbstring.encoding_translation = Off ; 編碼檢查順序. ;mbstring.detect_order = auto ; 當字元不能夠被轉換時,是否使用substitute_character. ;mbstring.substitute_character = none; ; 是否用加密的字元覆蓋沒有加密的字元.例如用mb_send_mail(), mb_ereg()覆蓋 ; mail(), ereg()等.有效的值是0,1,2,4或者它們的組合.例如,7代表覆蓋全部. ; 0: 不覆蓋 ; 1: 覆蓋mail()函數 ; 2: 覆蓋str*()函數 ; 4: 覆蓋ereg*()函數 ;mbstring.func_overload = 0 [FrontBase] ;fbsql.allow_persistent = On ;fbsql.autocommit = On ;fbsql.default_database = ;fbsql.default_database_password = ;fbsql.default_host = ;fbsql.default_password = ;fbsql.default_user = "_SYSTEM" ;fbsql.generate_warnings = Off ;fbsql.max_connections = 128 ;fbsql.max_links = 128 ;fbsql.max_persistent = -1 ;fbsql.max_results = 128 ;fbsql.batchSize = 1000 [Crack] ; 修改下面的設定,使這與cracklib檔案夾的本地路徑相符合,只可以使用基本的檔案名稱, ; 不包含副檔名. ; crack.default_dictionary = "c:phplibcracklib_dict" [exif] ; 這組就不用譯了吧 ; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS. ; With mbstring support this will automatically be converted into the encoding ; given by corresponding encode setting. When empty mbstring.internal_encoding ; is used. For the decode settings you can distinguish between motorola and ; intel byte order. A decode setting cannot be empty. ;exif.encode_unicode = ISO-8859-15 ;exif.decode_unicode_motorola = UCS-2BE ;exif.decode_unicode_intel = UCS-2LE ;exif.encode_jis = ;exif.decode_jis_motorola = JIS ;exif.decode_jis_intel = JIS ; Local Variables: ; tab-width: 4 ; End: |
—————————————————————————-
PHP上傳檔案的限制與修改
http://163.23.86.99/wpmu301/blog/2011/10/10/php%E4%B8%8A%E5%82%B3%E6%AA%94%E6%A1%88%E7%9A%84%E9%99%90%E5%88%B6%E8%88%87%E4%BF%AE%E6%94%B9/
—————————————————————————-
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
PHP上傳檔案的限制與修改(1Byte=8bits) 一、 製作PHP網頁也很常用到的一個功能就是利用表單上傳檔案 尤其是像自製相簿、影音的話 檔案輕則1~5MB 大的話20MB以上都有 然而Apache本身是有限制檔案上傳的 包括檔案大小、上傳時間是否會time out等等的 所以在製作前要從php.ini來作修改,要修改的包括以下幾項 max_execution_time max_input_time memory_limit post_max_size upload_max_filesize default_socket_timeout mysql.connect_timeout 可以利用 Ctrl + F 在php.ini裡一項一項尋找 1. max_execution_time Script執行時間上限(單位:秒) 把數字改成 max_execution_time = 300 2. max_input_time Script處理資料時間上限(單位:秒) 把數字改成 max_input_time = 300 3. memory_limit 系統記憶體(注意,這個的值一定要設比下面兩項的值都大) 把數字改成 memory_limit = 800M 4. post_max_size 使用表單的file欄位時是用POST傳值 這個可設定POST發送時的容量 把數字改成 post_max_size = 200M 5. upload_max_filesize 單次上傳檔案容量 把數字改成 upload_max_filesize = 200M 6. default_socket_timeout Socket無回應斷線時間(單位:秒) 把數字改成 default_socket_timeout = 300 7. mysql.connect_timeout 無回應斷線時間(單位:秒;-1代表不斷線一直等) 把數字改成 mysql.connect_timeout = -1 這樣設定的話利用表單上傳大檔案就不怕出現錯誤了,當然數值可以自己改,不過基本上在一般功能來說這樣已經很夠了 二、 post_max_size 控制在採用POST方法進行一次表單提交中PHP所能夠接收的最大數據量。如果希望使用PHP文件上傳功能,則需要將此值改為比upload_max_filesize要大。 允許的POST數據最大Bytes。此設定也影響到文件上傳。 要上傳大文件,該值必須大於upload_max_filesize指令的值。 如果啟用了記憶體限制,那麼該值應當小於memory_limit指令的值。 max_input_time 以秒為單位對通過POST、GET以及PUT方式接收數據時間進行限制。如果應用程序所運行環境處在低速網路上,則需要增加此值以適應接收數據所需的更多時間 單個腳本解析輸入數據(POST, GET, upload)的最大允許時間(秒),設置為-1 表示不限制。 memory_limit 為了避免正在運行的腳本大量使用系統可用記憶體,PHP允許定義內存使用限額。通過memory_limit變量來指定單個腳本程序可以使用的最大記憶體容量變量memory_limit的值應當適當大於post_max_size的值 單個程序腳本可以佔用的最大記憶體數,設置為-1表示為不限制 max_execution_time max_execution_time設置了在強制終止腳本前PHP等待腳本執行完畢的時間,此時間以秒計算。當腳本進入了一個無限循環狀態時此變量非常有用。然而,當存在一個需要很長時間完成的合法活動時(例如上傳大型文件),這項功能也會導致操作失敗。在這樣的情況下必須考慮將此變量值增加,以避免PHP在腳本正在執行某些重要過程的時候將腳本關閉 允許單個程序腳本佔用服務器的最大時間,單位是秒,這樣可以避免不經意間寫出一個死循環或者什麼程序,長期佔用服務器而把服務器累死。如果設置值為0表示不限制運行時間。 upload_max_filesize = 2M 允許上傳的文件的大小,默認是2M,如果需要上傳大於2M的文件就要修改這裡,當然需要關聯修改memory_limit和post_max_size的值。 四個重要的設置控制 PHP 可使用多少系統資源, 設置 描述 建議值 max_execution_time 一個腳本可使用多少 CPU 秒 30 max_input_time 一個腳本等待輸入數據的時間有多長 (秒) 60 memory_limit 在被取消之前,一個腳本可使用多少記憶體 32M output_buffering 數據發送給客戶機之前,有多少數據(Bytes)需要記憶體 4096 具體數字主要取決於您的應用程序。如果要從用戶處接收大文件,那麼 max_input_time 可能必須增加,可以在 php.ini 中修改,也可以通過代碼重寫它。與之類似,CPU 或記憶體佔用較多的程序也可能需要更大的設置值。目標就是緩解超標程序的影響,因此不建議全局禁用這些設置。關於 max_execution_time,還有一點需要注意:它表示進程的 CPU 時間,而不是絕對時間。因此一個進行大量 I/O 和少量計算的程序的運行時間可能遠遠超過 max_execution_time。這也是 max_input_time 可以大於 max_execution_time 的原因所在。 zymic free hosting. max_input_time 30 max_execution_time 20 godaddy grid economic plan max_input_time -1 -1 max_execution_time 30 30 freewebhostingarea.com/ free hosting Default value for max_execution_time is 15 seconds and for max_input_time it is 10 seconds. PS:具體可查看 PHP手冊 中的 〔php.ini 核心配置選項說明〕 upload_max_filesize 所上傳的文件的最大大小。 post_max_size 設定 POST 數據所允許的最大大小。 memory_limit 設定了一個腳本所能夠申請到的最大記憶體Bytes數。 一般來說:memory_limit > post_max_size > upload_max_filesize |
—————————————————————————-