对于运行Apache的Linux服务器来说,哪两个更容易/更快?
一)指向一个PHP文件的符号链接:
file-sym.php ---> file-orig.php
B)包含另一个PHP文件( file-orig.php )的PHP文件( file-orig.php ),如下所示:
file-inc.php的内容
<?php include('file-orig.php'); ?>
好奇,如果有人做了任何基准!
我的直觉反应告诉我符号链接会更快,因为在处理链中的第一个链接时,你将不得不读取更less的数据。 我不确定有什么区别,尝试两个看看有什么不同。
一个)
B)
include()变体对于Windows用户来说是好的,因为他们的系统上不能有符号链接。
出于安全性和性能的原因,许多pipe理员禁用apache符号链接。
为了达到性能目的,请在apache优化中查看此页面: http : //httpd.apache.org/docs/2.2/misc/perf-tuning.html
无论您的URL空间中哪里没有选项FollowSymLinks,或者您有一个选项SymLinksIfOwnerMatch Apache将不得不发出额外的系统调用来检查符号链接。 每个文件名组件一个额外的调用 例如,如果你有:
<Directory /> DocumentRoot /www/htdocs Options SymLinksIfOwnerMatch </Directory>
并请求URI /index.html。 然后Apache将在/ www,/ www / htdocs和/www/htdocs/index.html上执行lstat(2)。 这些lstats的结果永远不会被caching,所以它们会在每个请求中发生。
根据您的环境和代码,您可以看到符号链接如何成为指数性能问题。