Làm cách nào để đặt upload_max_filesize trong .htaccess?


90

Tôi đã thử đặt 2 dòng

php_value post_max_size 30M
php_value upload_max_filesize 30M

trong tệp .htaccess gốc của tôi nhưng điều đó mang lại cho tôi thông báo "lỗi máy chủ nội bộ" ...
php5 đang chạy trên máy chủ
Tôi không có quyền truy cập vào php.ini vì vậy tôi nghĩ htaccess là cơ hội duy nhất của tôi.
Bạn có thể cho tôi biết lỗi ở đâu không?
Cảm ơn trước

Câu trả lời:


139

php_value upload_max_filesize 30M đúng.

Bạn sẽ phải liên hệ với chủ nhà của mình - một số không cho phép bạn thay đổi giá trị trong php.ini


2
Cảm ơn bạn nhưng ini_set () không được làm việc cho upload_max_filesize và post_max_size: /
T1000

khi bạn nói "không hoạt động" có nghĩa là bạn không mang lại kết quả mong muốn / tạo ra lỗi / điều gì khác?
Kerry Jones

đặt error_reporting (E_ALL) và xem có điều gì hiển thị không. Ngoài ra, hãy liên hệ với nhà cung cấp máy chủ lưu trữ của bạn, họ sẽ có thể giúp bạn. Một số chặn các thay đổi đối với các biến như vậy vì họ không muốn bạn trở thành một trang web được buôn bán lớn.
Kerry Jones

14
Không thể đặt các tùy chọn này bằng ini_set (). Xem php.net/manual/en/ini.list.phpphp.net/manual/en/configuration.changes.modes.php
dev-null-dweller

Nhiều máy chủ không cho phép điều này nhưng bạn cũng có thể tạo tệp php.ini, đặt tệp đó vào thư mục gốc của trang web và ghi đè các giá trị ở đó.
Erik Čerpnjak

37

Nếu bạn nhận được 500 - Lỗi máy chủ nội bộ có nghĩa là bạn không có quyền đặt các giá trị này bằng .htaccess . Bạn phải liên hệ với các nhà cung cấp máy chủ web của mình và yêu cầu thiết lập AllowOverride Optionscho máy chủ của bạn hoặc đặt các dòng này vào tệp cấu hình máy chủ ảo của họ.


Cảm ơn bạn. Nhật ký lỗi đưa ra một số điều vô nghĩa về lệnh không hợp lệ, khác xa so với "Hãy thay đổi tệp cấu hình máy chủ ảo của bạn".
Altimus Prime, 14/07/18

33
php_value memory_limit 30M
php_value post_max_size 100M
php_value upload_max_filesize 30M

Sử dụng tất cả 3 trong .htaccesssau mọi thứ ở dòng cuối cùng. php_value post_max_sizephải nhiều hơn hai phần còn lại.


2
Tôi có thể biết lý do tại sao php_value post_max_sizephải nhiều hơn hai phần còn lại?
Anusha

@Anusha nếu bạn nghĩ về điều đó, bạn có thể đang thực hiện một bài đăng với hai tệp 30 triệu + nhiều dữ liệu văn bản hơn và điều đó sẽ tốn thêm một số byte, đó có thể là lý do
giovannipds

12

Việc cần làm để sửa lỗi này là tạo một tệp có tên là php.ini và lưu nó ở cùng vị trí với tệp .htaccess của bạn và thay vào đó hãy nhập mã sau:

upload_max_filesize = "250M"
post_max_size = "250M"

4
Điều này sẽ chỉ hoạt động trên một số môi trường lưu trữ. Làm việc cho tôi trên tài khoản lưu trữ Web Fusion của tôi.
Ian Jamieson

3

Nếu máy chủ web của bạn đang chạy php5, tôi tin rằng bạn phải sử dụng php5_value. Điều này đã giải quyết cùng một lỗi mà tôi nhận được khi sử dụng php_value.


-2

Cả hai lệnh đều đúng

php_value post_max_size 30M 
php_value upload_max_filesize 30M 

NHƯNG để sử dụng .htaccessbạn phải kích hoạt rewrite_moduletrong tệp cấu hình Apache. Trong httpd.conftìm dòng này:

# LoadModule rewrite_module modules/mod_rewrite.so

và loại bỏ #.


6
IMHO, để cho phép sử dụng .htaccess, tất cả những gì bạn cần làm là đặt AllowOverridebất kỳ thứ gì ngoại trừ none. Việc tải rewrite_modulechỉ bắt buộc đối với các chỉ thị ModRewrite.
RonaldPK
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.