可以引用文档根目录上方的 javascript 个文件吗?

Possible to reference javascript files above document root?

我正在做一个项目,其中 http://www.mywebsite.com/index.html/var/www/public 中,这是文档根目录(根据 /etc/apache2/sites-available/000-default.conf)。我想在我的 /var/www/public/index.html 文件中引用 /var/www/js 中的 javascript 个文件。这是我到目前为止尝试过的方法

<script src="/js/js_file.js"></script>
-
<script src="js/js_file.js"></script>
-
<script src="../js/js_file.js"></script>
-
<script src="../../js/js_file.js"></script>

None 这些作品。

如何在文档根目录之外引用 javascript 文件?

您可以通过向 Apache 配置添加重写规则来实现此目的。 See the apache url rewrite guide。这个想法是将内部目录映射到用户输入的 url 字符串。

像这样:

RewriteCond   %{HTTP_HOST}  \.mywebsite\.com$
RewriteRule  ^/js/(.*)\.js$ var/www/js/

将允许 public 用户通过 public url mywebsite.com/js/test.js.

访问 var/www/js/test.js

您可以添加 FollowSymLinks (See this thread),并在文档根目录中符号链接您的 js 文件夹(可能在 /var/www/public/js)。

实际上,您为 js 添加了别名,因此它根本不在文档根目录之外。