新聞中心
PHP是更流行的服務(wù)器腳本語言之一,被廣泛用于網(wǎng)站開發(fā)。在網(wǎng)站開發(fā)過程中,有時候需要上傳一些較大的文件,諸如視頻或圖片,但是PHP有一個默認(rèn)的限制,即對于上傳文件的更大大小有限制。但是,這個限制可以被改變。本文將介紹如何設(shè)置上傳PHP文件大小限制,以滿足網(wǎng)站開發(fā)的需求。

1. 在php.ini文件中修改上傳文件大小限制
php.ini是PHP的配置文件,它被用來配置PHP的各種參數(shù)和選項。修改php.ini文件將允許您更改PHP的上傳文件大小限制。在絕大多數(shù)發(fā)行版的Linux中,php.ini文件位于/etc/php.ini或/etc/php5/apache2/php.ini。
打開命令行終端并輸入以下命令來安裝編輯器:
“`
sudo apt-get install nano -y
“`
接下來,打開php.ini文件,查找以下代碼:
“`
upload_max_filesize = 2M
“`
注意,這里的2M表示上傳文件的更大大小為2MB。您可以將其設(shè)置為更高的值,以容納更大的文件。一旦您找到了此代碼,您可以將其更改為所需的大?。ㄕ埜鶕?jù)需要計算大小值),例如:
“`
upload_max_filesize = 10M
“`
2. 在.htaccess中修改上傳文件大小限制
.htaccess是一個被用來控制網(wǎng)站訪問權(quán)限的文件,在您的網(wǎng)站目錄下。如果您不想修改php.ini文件,您可以在.htaccess文件中添加以下代碼,以修改上傳文件大小限制:
“`
php_value upload_max_filesize 10M
php_value post_max_size 10M
“`
這也將設(shè)置上傳文件的更大大小為10MB。
3. 在特定腳本中修改上傳文件大小限制
如果您只想在特定腳本中更改上傳文件大小限制,您可以在該腳本的頂部添加以下代碼:
“`
ini_set(‘upload_max_filesize’, ’10M’);
ini_set(‘post_max_size’, ’10M’);
“`
這將設(shè)置上傳文件的更大大小為10MB,并僅在特定腳本中生效。
在Linux中,您可以通過修改php.ini文件、.htaccess文件或特定的腳本來更改上傳文件的大小限制。請注意,更改后的文件大小限制應(yīng)該是合理的,以避免網(wǎng)站服務(wù)器的負(fù)載過重或出現(xiàn)其他問題。在上傳大文件之前,您也應(yīng)該確保您的服務(wù)器空間足夠,以避免服務(wù)器磁盤被占滿的情況。
相關(guān)問題拓展閱讀:
- 文件上傳漏洞的類型有哪些?
文件上傳漏洞的類型有哪些?
1、 前端檢測繞過
有的站點只在前端對文件的類型有所限制,我們只需用bp抓包然后修改文件后綴名就能繞過這種檢測。
2、 文件頭檢測繞過
有的站點使用文件頭來檢測文件的類型,這種檢測可以在shell前加入相應(yīng)的字節(jié)一繞過檢測,幾種常見的文件類型的頭字節(jié)如下:
3、 后綴檢測繞過
部分服務(wù)器僅根據(jù)文件后綴、上傳時的信息或者文件頭來判斷文件類型,此時可以繞過。php由于歷史的原因,部分解釋器可能支持符合正則/ph(p?|t(ml)?)/的后綴,如php/php5/pht/phtml/shtml/pwml/phtm等。如果后端對文件名進(jìn)行了過濾,可以嘗試雙寫文件名,比如1.pphphp。
4、 系統(tǒng)命名繞過
在windows系統(tǒng)中,上傳不符合windwos命名規(guī)則的文件名會被windows系統(tǒng)自動去掉不符合規(guī)則符號后面的內(nèi)容,例如:test.asp.、test.asp(空格)、test.php:1.jpg、test.php:: DATA、test.php::DATA、test.php:: DATA、test.php::DATA…這些文件上傳到服務(wù)器端之后都會變成test.php
在linux系統(tǒng)下,可以嘗試上傳文件后綴名為大小寫混用的Php文件。
5、 文件包含繞過
在文件包含的時候,為了靈活包含文件,將被包含文件設(shè)置為變量,通過動態(tài)變量來引入需要包含的文件,用戶可以對變量的值進(jìn)行控制,而服務(wù)器端未對變量進(jìn)行合理的校驗,這樣就導(dǎo)致所包含的文件有可能存在惡意代碼。比如橘襲1.php
這個程序就包含了一個文件,我們在1.txt文件中寫入
然后將這個文件包含在1.php中1.php?file=1.txt這樣
就成功寫入1.php這個文件當(dāng)中,我們訪問1.php這個文件的時候就能出現(xiàn)php信息那個頁面。利用這個漏洞我們就可以進(jìn)行文件上傳,我們只需包含一個一句話木馬內(nèi)容的txt就能用菜刀連接,這樣就成功執(zhí)行了文件上傳。
6、 解析漏洞繞過
目錄解析:在網(wǎng)站中建立名稱為*.asp、.asa格式的文件夾時,其文件夾下面的文件都會被當(dāng)做asp執(zhí)行。
文件解析:當(dāng)文件名為.asp;1.jpg時,也會被當(dāng)做asp執(zhí)行
Apache解析漏洞:Apache在解析文件時,是從圓基兄右往左,如果遇到不認(rèn)識的擴(kuò)展名時,就會繼續(xù)向左判斷,例如1.php.rar就會被當(dāng)做
php解析。鋒悄
IIS 7.0/IIS 7.5/Nginx
SetHandler application/x-httpd-php
這段代碼的意思就是文件名包含”1”這個這個字符串就會被當(dāng)成php文件來處理。但是值得注意的是上傳.htaccess必須是網(wǎng)站根路徑。
7、 文件截斷繞過
00截斷:由于00代表結(jié)束符,所以會把00后面的所有字符刪除。
能利用這個漏洞的前提是,php版本要小于5.3.4,magic_quotes_gpc需要為OFF狀態(tài)。我們用bp進(jìn)行攔包之后,需要send to repeater,然后在hex中,在php后面添加00
8、 競爭條件攻擊
一些網(wǎng)站上傳文件邏輯上是允許上傳任意文件的,然后檢查上傳文件的內(nèi)容是否包含webshell腳本,如果包含則刪除該文件,這里存在的問題是文件上傳成功之后和刪除文件之間存在一個短的時間差,攻擊者就可以利用這個時間差來上傳漏洞攻擊。攻擊者先上傳一個webshell腳本1.php內(nèi)容如下:
’); ?>
關(guān)于linux上傳php文件大小的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
成都創(chuàng)新互聯(lián)建站主營:成都網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、網(wǎng)站改版的網(wǎng)站建設(shè)公司,提供成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、成都網(wǎng)站推廣、成都網(wǎng)站優(yōu)化seo、響應(yīng)式移動網(wǎng)站開發(fā)制作等網(wǎng)站服務(wù)。
分享文章:Linux如何設(shè)置上傳PHP文件大小限制(linux上傳php文件大小)
URL分享:http://fisionsoft.com.cn/article/dhjhhho.html


咨詢
建站咨詢
