php.ini上傳文件配置及安全配置的方法

這篇文章主要為大家展示了php.ini上傳文件配置及安全配置的方法,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶大家一起來研究并學習一下“php.ini上傳文件配置及安全配置的方法”這篇文章吧。

專注于為中小企業(yè)提供網(wǎng)站設計制作、做網(wǎng)站服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)安州免費做網(wǎng)站提供優(yōu)質的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉變。

php有什么用

php是一個嵌套的縮寫名稱,是英文超級文本預處理語言,它的語法混合了C、Java、Perl以及php自創(chuàng)新的語法,主要用來做網(wǎng)站開發(fā),許多小型網(wǎng)站都用php開發(fā),因為php是開源的,從而使得php經(jīng)久不衰。

上傳文件配置:

php上傳文件涉及到的參數(shù):
幾個參數(shù)調整:

0:文件上傳時存放文件的臨時目錄。必須是 PHP 進程所有者用戶可寫的目錄。如果未指定則 PHP
使用系統(tǒng)默認值。php.ini文件中upload_tmp_dir用來說明PHP上傳的文件放置的臨時目錄。
要想上傳文件,得保證服務器沒有關閉臨時文件和有對文件夾的寫權限
1:file_uploads
是否允許通過HTTP上傳文件的開關,默認為ON即是開

2:upload_tmp_dir
upload_tmp_dir用來說明PHP上傳的文件放置的臨時目錄,要想上傳文件,得保證服務器沒有關閉臨時文件和有對文件夾的寫權限,如果未指定則
PHP使用系統(tǒng)默認值

3:upload_max_filesize
允許上傳文件大小的最大值,默認為2M

4:post_max_size
控制在采用POST方法進行一次表單提交中PHP所能夠接收的最大數(shù)據(jù)量。如果希望使用PHP文件上傳功能,則需要將此值改為比
upload_max_filesize要大

5:memory_limit
為了避免正在運行的腳本大量使用系統(tǒng)可用內存,PHP允許定義內存使用限額。通過memory_limit變量來指定單個腳本程序可以使用的最大內存容量
變量memory_limit的值應當適當大于post_max_size的值

6:max_execution_time
max_execution_time設置了在強制終止腳本前PHP等待腳本執(zhí)行完畢的時間,此時間以秒計算。當腳本進入了一個無限循環(huán)狀態(tài)時此變量非常
有用。然而,當存在一個需要很長時間完成的合法活動時(例如上傳大型文件),這項功能也會導致操作失敗。在這樣的情況下必須考慮將此變量值增加,以避免
PHP在腳本正在執(zhí)行某些重要過程的時候將腳本關閉
如何實現(xiàn)php大文件上傳:
一個簡單的配置例子,大家可以參考下:
1:打開php.ini,首先找到
file_uploads = on ;是否允許通過HTTP上傳文件的開關。默認為ON即是開
upload_tmp_dir ;文件上傳至服務器上存儲臨時文件的地方,如果沒指定就會用系統(tǒng)默認的臨時文件夾
upload_max_filesize = 8m ;望文生意,即允許上傳文件大小的最大值。默認為2M
post_max_size = 8m ;指通過表單POST給PHP的所能接收的最大值,包括表單里的所有值。默認為8M
一般地,設置好上述四個參數(shù)后,上傳<=8M的文件是不成問題,在網(wǎng)絡正常的情況下。
但如果要上傳>8M的大體積文件,只設置上述四項還一定能行的通。除非你的網(wǎng)絡真有100M/S的上傳高速,否則你還得關心關心下面的參數(shù)
max_execution_time = 600 ;每個PHP頁面運行的最大時間值(秒),默認30秒
max_input_time = 600 ;每個PHP頁面接收數(shù)據(jù)所需的最大時間,默認60秒
memory_limit = 8m ;每個PHP頁面所吃掉的最大內存,默認8M
把上述參數(shù)修改后,在網(wǎng)絡所允許的正常情況下,就可以上傳大體積文件了

php.ini優(yōu)化---------安全篇

代碼:
查找:disable_functions
找到后在=后面添加
(這里都是禁止在php里面執(zhí)行的函數(shù))代碼:
exec,system,passthru,error_log,ini_alter,dl,openlog,syslog,readlink,symlink,link,leak,fsockopen,
proc_open,popepassthru,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,
shell_exec,proc_get_status,popen
上面內容請放到一行。因為保持帖子的整體效果作了換行

查找:display_errors
如果是On的話改成Off

查找:magic_quotes_gpc
如果是Off的話改成On

查找:register_globals
如果是On的話改成Off

查找:open_basedir
后面增加

/www/:/tmp/

這里是限制php可以訪問的目錄,后面一定要加上/,否則如果有/wwwabcd這個目錄也會被訪問得到

多個目錄用英文:分隔。如果不添加/tmp/的話Discuz!的上傳功能就無法使用
注意:以上內容在php.ini的開頭會有相關設置的提示,請按ctrl+x查找下一個,不要直接在上面修改

------------------------------
對php.ini優(yōu)化

GD庫的支持
;extension=php_gd2.dll
將前面的冒號去掉,

output_buffering = Off
輸出緩存允許你甚至在輸出正文內容之后發(fā)送 header(標頭,包括cookies)行 其代價是輸出層減慢一點點速度。你可以使用輸出緩存在運行時打開輸出緩存, 或者在這里將指示設為 On 而使得所有文件的輸出緩存打開。
output_handler = ; 你可以重定向你的腳本的所有輸出到一個函數(shù),
那樣做可能對處理或以日志記錄它有用。
例如若你將這個output_handler 設為ob_gzhandler, 則輸出會被透明地為支持gzip或deflate編碼的瀏覽器壓縮。
設一個輸出處理器自動地打開輸出緩沖。
找到這個
output_buffering = Off
修改為
On
注意,不要設置數(shù)值,只需要設置為On即可。

相應的,你還可以在你的discuz后臺,打開gzip支持,也是優(yōu)化的一項內容。

有些朋友為了安全,還啟用了php的安全模式,這個也是一辦法

另外有些朋友需要使用全局變量和MAGIC,這是一些php程序的必備條件,discuz2.0也需要
可以打開,不過安全性能將降低,方法很簡單。
register_globals = Off ;
將其修改為On即可.
一些朋友經(jīng)常反映無法上傳較大的文件或者后臺備份數(shù)據(jù)經(jīng)常超時
max_execution_time = 30 ; 這個是每個腳本運行的最長時間,可以自己修改加長,單位秒
max_input_time = 60 ; 這是每個腳本可以消耗的時間,單位也是秒
memory_limit = 8M ; 這個是腳本運行最大消耗的內存,也可以自己加大
upload_max_filesize = 2M ; 上載文件的最大許可大小 ,自己改吧,一些圖片論壇需要這個更大的值。
如果:
php報錯顯示PHP has encountered an Access Violation at ***解決辦法
很多人說,是php版本的問題,其實不然,可以從四個地方來看這個問題

1,是否zend所需的dll文件所在目錄給的權限不夠,必須有讀取和運行的權限
2,是否使用的2003,設置過應用池,比如池中限制了什么什么,調整一下再試試看,是否好了,呵呵
3,php.ini有兩個地方?jīng)]有設置,而且一些程序必須用到的

將;upload_tmp_dir該行的注釋符,使該行在php.ini文檔中起作用。
upload_tmp_dir是用來定義上傳文件存放的臨時路徑,在這里你還可以給其定義一個絕對路徑,
例如:upload_tmp_dir = d:upload  當然,此時你的d:upload目錄必須有讀寫權限。

這里我設置為
upload_tmp_dir = c:temp

出現(xiàn)這樣的錯誤語句一般是因為你的php.ini中關于session.save_path一項沒有設置好,
解決的方法是將session.save_path和session.cookie_path 設置置為
session.save_path = c:temp
session.cookie_path = c:temp(我沒有修改這項,我發(fā)現(xiàn)修改后的驗證瑪不能用)
然后在c:目錄下建立一個temp目錄

注意:任何修改先做文件備份!!

以上就是關于“php.ini上傳文件配置及安全配置的方法”的內容,如果改文章對你有所幫助并覺得寫得不錯,勞請分享給你的好友一起學習新知識,若想了解更多相關知識內容,請多多關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

當前題目:php.ini上傳文件配置及安全配置的方法
分享地址:http://muchs.cn/article0/gedhoo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計網(wǎng)站設計公司、關鍵詞優(yōu)化、服務器托管品牌網(wǎng)站制作、微信公眾號

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設