php getcwd() 解析符号链接(symbolic link)的目标而不是当前目录

标签 php apache symlink resolve getcwd

据我所知,php 的 getcwd()(以及类似的函数,例如 dirname(__FILE__))应该返回正在执行的文件的当前目录.

如果当前目录恰好是另一个目录的符号链接(symbolic link),php(可能与 apache 结合使用)应该返回显示符号链接(symbolic link)名称的路径作为您所在的“目录”。

例子:

from /var/www,
directory 'one' contains index.php
symlink 'two' points at directory 'one'

one/index.php: <?php echo getcwd(); ?>

正在访问 http://localhost/two/index.php在浏览器中显示 /var/www/one

我希望它显示 /var/www/two

有谁知道这是我可以更改的 php 还是 apache 设置?还是我无法以这种方式使用符号链接(symbolic link)?

最佳答案

好的,明白了。如果通过浏览器,请使用 $_SERVER['SCRIPT_FILENAME']。在命令行上,您可以使用 exec("pwd")

获取当前的符号链接(symbolic link)目录

关于php getcwd() 解析符号链接(symbolic link)的目标而不是当前目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7303189/

相关文章:

javascript - 如何阻止浏览器Ctrl+U?

javascript - amCharts 不显示 json 数据

apache - apache 服务器上 Backbone.js 应用程序的 SEO - phantom.js 和 node.js?

symlink - MAC OSX El Capitan : Airport Sym link not permitted

linux - 损坏的符号链接(symbolic link)和一个神秘的(已删除)

php - 使用 $_SESSION(Wordpress、ACF)保存的数据出现问题

php - .php 文件下载而不是执行

mysql - El Capitan DP8 是否在 MAMP PRO 3.4 中断开了与 LocalHost 的连接?

php - 如何在 Ubuntu Apache 中启用错误日志

.net - 防止 IO.GetDirectories() 遵循符号链接(symbolic link)