![](/img/trans.png)
[英]Maximum upload size in wordpress is 128mb but can't upload file size greater than 2mb
[英]Problem with: Maximum upload file size: 2 MB in Google Kubernetes Wordpress
我部署了這個 Wordpress kubernetes 容器: https ://console.cloud.google.com/marketplace/details/google/wordpress ? project
但是我在 Wordpress 中上傳主題時遇到問題。 上傳的文件超過了 php.ini 中的 upload_max_filesize 指令。
我找不到文件:php.ini。 在 kubernetes 的 pod 中。
我嘗試使用插件在 Wordpress https://wordpress.org/plugins/php-settings/ 中編輯 php.ini,但沒有寫入文件。
有人可以通過分步指南幫助我修改容器的 yaml 或其他解決方案嗎?
正如這里所建議的,推薦的方法是掛載一個 php 配置 ini 文件。 公開它的最方便的方法是使用 Kubernetes ConfigMaps。 請創建一個新的配置映射:
apiVersion: v1
kind: ConfigMap
metadata:
name: wp-php-config
namespace: default
data:
uploads.ini: |-
file_uploads = On
upload_max_filesize = 256M
post_max_size = 256M
memory_limit = 64M
max_execution_time = 600
然后通過將以下配置添加到您的 pod spec.template.spec.containers
來將 configMap 作為您的 pod 中的卷spec.template.spec.containers
:
... (wordpress container specs)
volumeMounts:
- mountPath: /usr/local/etc/php/conf.d/uploads.ini
name: php-config
subPath: uploads.ini
(...)
volumes:
- configMap:
defaultMode: 420
name: wp-php-config
name: php-config
您可能還需要調整入口最大上傳限制。 假設您使用的是 nginx ingress,請用注釋裝飾它:
nginx.ingress.kubernetes.io/proxy-body-size: 50m
如果要將更改全局應用到入口,請搜索入口 configMap 並在那里添加設置。
您可以執行 'kubectl get pods' 來列出 pods,然后使用 'kubectl exec -it [POD_NAME] -- /bin/bash' 進入 shell。 然后,您可以按照此鏈接中提到的方法更改值。
另一種選擇是使用類似於此鏈接的自定義配置創建一個ConfigMap ,以增加上傳文件的大小。
然后,您需要轉到 GKE 工作負載,在“StatefulSet”類型的“wordpress-1-wordpress”工作負載中,您需要修改 YAML 文件,您可以在其中將ConfigMap 數據添加到 Volume 。
另一種解決方法是,您可以重建您在 docker 文件中使用的映像。
這是我為解決問題所做的工作:
我將這些行添加到我的 Dockerfile
運行 touch /usr/local/etc/php/conf.d/uploads.ini \\ && echo "file_uploads = On \\n\\ max_execution_time = 600 \\n\\ upload_max_filesize = 200M \\n\\ post_max_size = 200M" >> /usr/local /etc/php/conf.d/uploads.ini
在 nginx-ingress dependencies.yml 中,我在 configmap 中添加了這些“數據”參數並且它起作用了。
種類:ConfigMap apiVersion:v1 元數據:名稱:nginx-configuration 命名空間:ingress-nginx 標簽:app.kubernetes.io/name:ingress-nginx app.kubernetes.io/part-of:ingress-nginx 數據:proxy-body-尺寸:“200m”客戶端最大身體尺寸:“200m”
之后, *kubectl apply -f ingress/dependencies.yml*
並且我能夠上傳超過 2mb。
試試這個,看看它是否適合你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.