1 - 下载 Swoole Loader 请下载 WINNT 系统 PHP-7.4.33 版本 非线程安全 的 swoole_loader 扩展,点击直达下载页面 2 - 安装 Swoole Loader 将刚才下载的 swoole_loader 扩展文件( swoole_loader.dll )上传到当前 PHP 的扩展安装目录中: ext......
树莓派实现PHP上传文件
默认可上传的最大文件为2M,修改PHP配置文件/etc/php5/fpm/php.in中的属性upload_max_file及post_max_file属性值。然后再在nginx配置件/etc/nginx/nginx.conf中添加client_max_body_size 20m。
工具/原料
- 树莓派板子
- 显示器
- 鼠标键盘
PHP文件上传
网上很多PHP上传文件的教程,与其到处搜索,不如把平时常用到的学习网站记录下来,系统的去学习查阅,对于初学者来说,菜鸟教程很有用处,不要跟无头苍蝇似的这看一块,那看一块,学到半瓶子知识去上手项目,很被动的。
树莓派安装操作系统
在树莓派系统上搭建好的LNMH环境下实现PHP文件上传
站点目录
/usr/share/nginx/html/
项目目录结构
upload_file.html
upload.php
upload/
创建一个文件上传表单界面upload_file.html
创建上传脚本upload.php
启动Nginx服务
sudo /etc/init.d/nginx restart
文件上传成功界面
上传到文件会出现的问题
0错误:1
怎么解决?
1 PHP默认上传文件的大小为2M,如果上传大于2M的文件,需修改php.ini配置文件
定位PHP的配置文件路径,经过下述方法找定位php.ini路径,树莓派上php.ini配置文件路径——这个很重要,PHP有很多php.ini文件,千万不要搞错了!千万不要搞错了!千万不要搞错了!
/etc/php5/fpm/
cd 到该目录,默认pi用户是没有权限修改php.ini文件
查看配置文件php.ini的读写权限
pi@xiaoxiao:/etc/php5/cli$ ls -l
total 76
drwxr-xr-x 2 root root 4096 Apr 19 09:09 conf.d
-rw-r--r-- 1 root root 72340 Apr 15 02:28 php.ini
pi所在的是就是其他r--,只有读取权限
修改pi拥有php.ini的读写,修改完成,权限再修改回去
我这里图省事就777了,所以用户都可读写执行,这样做很危险的最好647
pi@xiaoxiao:/etc/php5/cli$ sudo chmod 777 php.ini
查看是否修改成功
pi@xiaoxiao:/etc/php5/cli$ ls -l
total 76
drwxr-xr-x 2 root root 4096 Apr 19 09:09 conf.d
-rwxrwxrwx 1 root root 72340 Apr 15 02:28 php.ini
权限修改成功
vi打开php.ini
pi@xiaoxiao:/etc/php5/cli$ vi php.ini
文件内容太多,需掌握vi下的搜索功能
upload_max_filesize = 8m;允许上传文件大小的最大值。默认为2M。
post_max_size = 8m;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M
搜索方式
1、命令模式下输入“/字符串”,例如“/Section 3”。
2、如果查找下一个,按“n”即可。
定位到upload_max_filesize属性,按下i进入编辑模式,修改上传文件大小
upload_max_filesize = 8m
按下esc进入命令行模式,输入
:wq
敲击回车键
保存退出php.ini文件
php.ini文件权限修改回744
pi@xiaoxiao:/etc/php5/cli$ sudo chmod 744 php.ini
查看权限否修改成功
pi@xiaoxiao:/etc/php5/cli$ ls -l
total 76
drwxr-xr-x 2 root root 4096 Apr 19 09:09 conf.d
-rwxr--r-- 1 root root 72340 Apr 23 10:46 php.ini
修改成功。
重启Nginx服务
cd到/etc/init.d/目录
pi@xiaoxiao:/etc/nginx$ vi nginx.conf
pi@xiaoxiao:/etc/nginx$ sudo /etc/init.d/nginx restart
[ ok ] Restarting nginx (via systemctl): nginx.service.
重启php5-fpm服务
cd到/etc/init.d/目录
pi@xiaoxiao:/etc/php5/fpm$ vi php.ini
pi@xiaoxiao:/etc/php5/fpm$ cd /etc/init.d/
pi@xiaoxiao:/etc/init.d$ sudo service php5-fpm restart
出现
413 request entity too large
原来nginx默认上传文件的大小是1M,可nginx的设置中修改。
解决方法如下:
1.打开nginx配置文件nginx.conf, 路径一般是:/etc/nginx/nginx.conf。
2.在http{}段中加入client_max_body_size20m; 20m为允许最大上传的大小。
3.保存后重启nginx,问题解决。
注意事项
- 默认可上传的最大文件为2M,需要修改配置文件增加上传文件的大小
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
标签: PHP
相关文章