再会。
我需要输出各种文件,即 css、js、xml、png、jpg 和所有其他可以在服务器上定位和使用的文件。
文件可以位于服务器目录下一级的文件夹中,主项目文件夹是public,Web 服务器配置为index.php从该文件夹读取。
在这种情况下,内容文件位于文件夹Content中,即位于文件夹Content\Theme\Default下一层的完全不同的文件夹中public。
项目结构大致如下:
web/
... public
... ... index.php
... Content
... ... Theme
... ... ... Default
... ... ... ... image.png
... ... ... ... styles.css
... ... ... ... main.js
有哪些选项可以“读取”和“提供”文件夹外的浏览器文件public?
想到的只是强制PHP读取并记住文件,然后生成一个带有路径和文件名的路由器,然后将缓存的文件以适当的值发送到所需的路由器header(),实际上它可以工作。
但是会出现其他问题,例如 PHP 的内存问题,因为它会不断地读取、存储和返回大量文件数据。几兆字节的内存将被破坏,除此之外,来自服务器的响应时间显着增加 - 从使用readfile($png)服务器传输的几张图片响应从 50mc 增加到 2sec。
也许有各种 PHP 库可以满足我的目的,或者有更简单的方法来为外部的浏览器准备文件public?
PS:提前感谢您的回答和任何建议。
ln -s /yourDirPath /publicDirPath让我们更详细地描述这一点:
因此,将所有资产(js、css)存储在公共类型的目录中是一种常见的做法(其中 99.9% 的项目都有一个入口点 index.php)
完成了这样的事情:您可以根据需要将文件上传到文件夹,不同的框架通常会将其资产复制到资产目录,也就是说,它会起作用
public/assets这种方法有以下好处:
public/assets/{3dlibname}/js/file.js)例如此外,还有一种方法是故意将某个目录单独存储并通过符号链接与公共相关联。这样做是因为公司内部有一些规则,例如,所有图片都分开存储。