現在,如果我從我的基本Yii2應用程序(託管在網絡服務器上)註銷,並且我知道上傳文件的直接url,我可以訪問並查看它也登出。我的上傳目錄在app/web
之下。我的webroot是app/web
。有沒有辦法限制只有登錄用戶?我猜它必須用apache做更多,或者?謝謝!Apache訪問上傳的文件只有登錄Yii2
回答
是的,yii不限制對文件的訪問。您必須將文件保存在web/
以下。我沒有試過我自己,但我發現這個功能,可以幫助您
http://www.yiiframework.com/doc-2.0/yii-web-response.html#sendFile()-detail
public $this sendFile ($filePath, $attachmentName = null, $options = [])
編輯根據您的評論: 如果您的下載文件夾是網絡,如frontend/downloads
它不應該通過瀏覽器訪問。但你可以在文件然後發送到使用
public function actionTest()
{
Yii::$app->response->sendFile(Yii::getAlias('@frontend').'/download/yourfile.zip');
}
上傳文件夾已經在'/ web /'下。我不明白你的意思是什麼,這個功能可以提供幫助。 – user2511599
然後,無論是我誤解了你的問題,還是你沒有閱讀過這個功能。在我的答案中作爲編輯提供了一個示例。這不是你問的嗎? –
問題是,文件目前(基本應用程序)**總是**可訪問。我不想那樣。 – user2511599
- 1. 使IIS7上的登錄用戶只能訪問文件夾
- 2. Yii2登錄問題
- 3. Asp.net登錄和文件上傳問題
- 4. 只有登錄到CMS時才允許訪問文件[SilverStripe]
- 5. 只有登錄的用戶才能訪問PHP登錄頁面?
- 6. 文件上傳yii2
- 7. yii2的文件上傳api
- 8. 如何只允許登錄的用戶訪問文件夾中
- 9. 只允許訪問WordPress中登錄用戶的文件
- 10. Yii2限制訪問文件
- 11. yii2文件上傳錯誤
- 12. Yii2錯誤文件上傳
- 13. Multer訪問req.body沒有上傳文件
- 14. ASP.NET文件夾只能訪問登錄用戶。
- 15. 限制訪問圖像文件登錄用戶只能在php
- 16. 訪問Apache Tapestry中上傳的文件頁面
- 17. 使上傳的文件無法訪問php/apache
- 18. 訪問Zend上傳文件
- 19. Kendo上傳訪問文件?
- 20. 訪問上傳文件時
- 21. 登錄屏幕上的文件夾訪問
- 22. 如何從apache上傳tmp文件夾訪問圖像
- 23. 當用戶登錄來自前端時,Yii2登錄允許訪問後端
- 24. 文件上傳替代登錄系統
- 25. 登錄時上傳文件時出錯
- 26. ZF2處理文件上傳。如何訪問上傳的文件?
- 27. Yii2 PARAMS內本地配置文件訪問的公共目錄
- 28. 在Yii2上登錄的REST API調用
- 29. 更新yii2中的上傳文件
- 30. 入門上傳文件的yii2
[這裏就是我一直在尋找(用戶http://stackoverflow.com/questions/2679524/block-direct-access-to-a-file- over-http-but-allow-php-script-access),對不起,我還沒有找到它。 – user2511599
靜態文件(圖片)無法訪問應用程序,現在也... – user2511599