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

问题描述 投票:0回答:2

大家好!我在这个配置问题上苦苦挣扎,因为我试图增加 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>
<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>

php apache .htaccess
2个回答
6
投票

需要更改 php.ini 中的 upload_max_filesizepost_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

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


0
投票

为了调整每个 Apache 虚拟主机的文件上传大小(与

php.ini
中的全局文件上传大小相反),您需要将以下行添加到主机的配置或
.htaccess
文件中(例如,将限制提高到 50Mb) ):

    php_value upload_max_filesize 50M
    php_value post_max_size 52M

请注意,

post_max_size
必须大于
upload_max_filesize

© www.soinside.com 2019 - 2024. All rights reserved.