php - "Symbolic"链接以解决对 public_html 之外的文件夹的请求?

标签 php linux apache security resolveurl

我在 public_html 目录下的一个文件夹中有很多图像和 pdf 文件,我在 public_html 上有很多脚本根据用户请求动态处理、创建和编辑这些文件。

现在的问题是,我已经意识到将这些文件存储在 public_html 的文件夹中并不安全,也许有人可以注入(inject)一些脚本并将它们全部删除!所以我想做的是将它们移到 public_html 之外。但是 - 因为我有太多的脚本处理所有这些文件,所以所有的路径都会被弄乱。我正在使用使用相对路径的脚本 (/home/public_html/designs/product1/...) 以及使用绝对路径的脚本 (www.mydomain.com/designs/产品 1/...)。

老实说,我对符号链接(symbolic link)知之甚少 - 我已经阅读了一些,但我发现它很困惑,因为我对 Linux 也不是很好。

我的问题是:有没有什么方法可以放置某种符号链接(symbolic link)或连接,这样我就可以将我所有的产品设计文件移到 public_html 之外,而不必更改我的所有脚本以指向新路径?那么也许,某种代码可以将我的脚本中的所有 public_html/designs/ 请求解析到新路径?也许符号链接(symbolic link)不是我在这里需要的,而是其他东西?

最佳答案

在 linux 中创建系统链接很容易

首先进入 public_html 目录:

/home/public_html/

然后将 designs 目录移动到上层目录 [ 或者任何你想要的地方 ] mv设计../

然后创建指向真实目录的符号链接(symbolic link)

ln -s ../designs designs

一切都会好起来的

关于php - "Symbolic"链接以解决对 public_html 之外的文件夹的请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16275369/

相关文章:

php - .htaccess 重写图像 url

linux - OpenGL窗口视频采集问题

linux - 当我仅在c文件中插入任何模块时如何显示内核版本?

linux - 增加 AWS EC2 实例中 Beanstalkd 的最大打开文件数

c++ - apache 和 cgicc - 区分 post 和 get 变量

php - 如何将 View 发送回 Laravel 中的 ajax

php - WordPress 后端显示具有特定评论数的帖子

php - 为什么我不能获得用于 Wamp 2.4.4 的自签名证书 (ssl)?

php - ext js 存储/模型示例 .net - 将 php/mysql 转换为 .netwebservier/sql

php - 在虚拟服务器上运行外部程序