訪問控制器時省略了index.php報No input file specified.
解決:public/.htaccess下檔案改為(RewriteRule行):
<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?s=$1 [QSA,PT,L]
</IfModule>
Apache開啟路由重寫(一般默認開啟了):
httpd.conf中mod_rewrite.so注釋去掉,
阿里檔案上傳跨域
錯誤資訊:
Access to XMLHttpRequest at 'http://xxxx.oss-cn-hangzhou.aliyuncs.com/file?uploads=' from origin 'http://localhost' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
require_once(): Failed opening required '../a.php' (include_path='.;C:\php\pear')
通過百度嘗試以下,都沒用:
1.可能由于你沒有傳完整php程式,或者php程式中的某個檔案損壞,可能會報這個錯誤,去官網重新下載檔案,是虛擬空間的請用官網支持的FTP工具上傳php程式,
2.檔案權限問題,可能檔案或者檔案夾權限設定錯誤引起的,
3.檔案夾名含有中文,有時候中文檔案夾名也可能引起這個錯誤,建議改成英文的,
4.修改php程式,這個方法我不推薦(因為有的php程式可能需要改很多很多)
5.修改php.ini組態檔,
通過測驗,其在相同路徑或者子路徑是能生效的,也就是說它不識別../跳到上一個路徑,那就直接使用路徑常量定位到專案根路徑,進行拼接,如:
require_once THINK_PATH.'\Library\Vendor\aliyunOss\autoload.php';
Can't use method return value in write context
錯誤位置
FILE: xxx\WWW\app\ThinkPHP\Library\Vendor\aliyunOss\src\OSS\OssClient.php LINE: 3384
這里是使用了阿里云OSS的phpsdk,目前的版本是(2.6.0 時間是:20221022),其檔案上說支持PHP 5.3以上版本,

但很可惜那都是騙人的,然后換底版本的sdk(v2.2.4),這個錯就消失了,
Exception' with message '"xxxx.oss-cn-beijing.aliyuncs.com"bucket name is invalid' in
這是阿里云OSS的一個報錯,這說明連上了呀,
這個是bucket名稱錯了,其值應該是這里的,(而不是像這種的xxx.oss-cn-beijing.aliyuncs.com):

關于檔案上傳
在php.ini中需要組態檔上傳的最大值等,否則上傳檔案超出大小時$_FILES為空
;post的最大值 默認的post_max_size 為2M
post_max_size=1024M
;PHP頁面運行的最大時間值,默認30秒
max_execution_time=300
;上傳的最大值 默認為8M post_max_size 大于 upload_max_filesize 為佳
upload_max_filesize=1024M
;是否允許通過HTTP上傳檔案的開關,默認為ON即是開
file_uploads = on
;檔案上傳至服務器上存盤臨時檔案的地方,如果沒指定就會用系統默認的臨時檔案夾
upload_tmp_dir
;每個PHP頁面接收資料所需的最大時間,默認60秒
max_input_time = 600
;每個PHP頁面所吃掉的最大記憶體,默認8M
memory_limit = 8m
ThinkPHP 驗證碼總是不正確 后臺不能登入
使用new \Think\Verify();生成驗證碼會在session中保存驗證碼的值,但是若session的路徑設定有問題,或者是沒設定會導致其無法保存,進而一直都是空的導致出錯,
;配置session路徑
session.save_path="D:\phpStudy\tmp\tmp"
當你配置了它發現還是不行的話,然后你切個低版本的它又行了,可能是當前專案目錄下有型別user.ini也配置了session.save_path的值,你可以使用phpinfo();看下是不是有個local的量,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/519265.html
標籤:其他
