gpt4 book ai didi

php - 如何在 Dreamhost 上为多个域创建共享文件夹

转载 作者:太空宇宙 更新时间:2023-11-04 04:30:26 26 4
gpt4 key购买 nike

我有一个带有 Dreamhost 的虚拟专用服务器。我正在尝试创建一个我的所有域都可以访问的共享文件夹。在该文件夹中,我想放置 PHP 类,甚至是 javascript 之类的静态文件。

我已经创建了一个与我的域文件夹处于同一级别的目录。我想通过这样的方式调用文件... /home/username/shared/file.php。然而这不起作用,我希望一些魔法(比如 .htaccess 可能)能让这项工作成功。

编辑:哎呀,好的,我可以使用上面的方法包含 PHP 文件。如何包含同一目录中的静态文件,如 Javascript、CSS、图像等?

这有效:

<?php include('/home/username/shared/file.php'); ?>

这不起作用:

<link rel="stylesheet" type="text/css" href="/home/username/shared/reset.css" media="screen" />

或者,我意识到我可以将静态文件放在域中,然后简单地指向它们,但我想知道如何使其他配置工作。

最佳答案

你应该高兴<link rel="stylesheet" type="text/css" href="/home/username/shared/reset.css" media="screen" />不工作。如果是这样,您将面临很大的安全漏洞。

正确的方法是在文档根目录中为该共享目录创建一个符号库,或者使用别名。

符号链接(symbolic link)方法

在 shell 中运行以下命令:

ln -s /home/username/shared /home/target/

它将创建一个名为 /home/target/shared 的符号链接(symbolic link),指向/home/username/shared 。您可能需要添加 Options +FollowSymLinks指令到您的服务器配置(或 .htaccess 文件)

别名方法

此方法需要更改您的服务器配置(例如httpd.conf)。添加 Alias 指令:

Alias /shared /home/username/target

注意:这仅用于通过服务器发出的请求(例如 http://example/shared/reset.css ),而不用于 PHP 文件。在 PHP 文件中,您必须使用完整路径 ( /home/username/shared/file.php )

<小时/>

您选择哪种方法取决于您。后者更容易配置,因为您不必担心权限/所有权。如果您确实需要使用/home/target/shared/file.php,则可以使用前者。 .

关于php - 如何在 Dreamhost 上为多个域创建共享文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3882496/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com