如何在 Apache 配置中增加文件上传大小

-1 php apache .htaccess

嘿伙计们!我在这个配置问题上苦苦挣扎,因为我试图增加 Apache 配置中的文件上传大小容量,但不知道如何准确地做到这一点。我发现这篇文章讨论了这一点,但想知道更改 .htaccess 的正确方法。

https://brightwhiz.com/increase-file-upload-size-apache/

我正在尝试解决 php (laravel) 中无法上传大于 5MB 的文件的问题,因此我在本文中找到了此解决方案。配置我的 .htaccess 来执行此操作的正确方法是什么?

我已经尝试过这些配置

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Send Requests To Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]

    <Directory "/var/www/html/assets">
        LimitRequestBody 67108864
    </Directory>
</IfModule>
Run Code Online (Sandbox Code Playgroud)
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Send Requests To Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

<Directory "/var/www/html/assets">
    LimitRequestBody 67108864
</Directory>

Run Code Online (Sandbox Code Playgroud)

Piy*_*iya 5

需要更改php.ini 中的 upload_max_filesize 和 post_max_size设置以支持大于php默认允许大小的文件。

将upload_max_filesize设置为需要上传的文件的最大大小。

memory_limit设置为运行 php 脚本所需的内存量,并将max_execution_time设置为运行脚本所需的时间(以秒为单位)。

注意:从现在开始,ini 存储在类似 /etc/php/8.1/apache2/php.ini 的文件夹中

upload_max_filesize=30M
post_max_size=31M
memory_limit = 100M
max_execution_time = 120
Run Code Online (Sandbox Code Playgroud)

注意:不要忘记重新启动 apache 服务器。如果您无法保存 php.ini 文件,则必须授予该特定文件的权限。(不要授予整个文件夹的权限)