gpt4 book ai didi

apache 2.4 不会从/tmp 服务

转载 作者:行者123 更新时间:2023-12-04 18:36:31 25 4
gpt4 key购买 nike

在 Apache 2.2 下,我经常从/tmp/checkouts 开发 Web 应用程序。安装 vanilla Ubuntu 18.10 给出 me apache 2.4.34-1ubuntu2 .我正在使用 2.4 Require 指令:

    Alias /tmp/checkouts /tmp/checkouts
<Directory /tmp/checkouts>
Options Indexes FollowSymLinks MultiViews
DirectoryIndex Overview index
AllowOverride All
Require all granted
</Directory>

但总是得到“在此服务器上找不到请求的 URL/tmp/checkouts/。”。相同的指令在/home/eric/checkouts 中起作用。我能够 mv 结帐并从/home/checkouts、/checkouts 和/t2/checkouts 提供服务,其中/t2 与/tmp 具有相同的权限。

我目前从/t2 提供服务,并将/tmp/checkouts 符号链接(symbolic link)到/t2/checkouts (所以我不必重新编程我的手指)。我尝试交换以便/t2/checkouts 符号链接(symbolic link)到/tmp/checkouts,添加 <Directory>两者的 block ,/t2/checkouts block 包括 Options FollowSymLinks ,但在我的 error.log 中得到了这个(使用 LogLevel 调试): Symbolic link not allowed or link target not accessible: /t2/checkouts .

(Ubuntu 版本的)apache2.4 是否特别禁止从/tmp 提供服务?我在 /etc/apache2 下的任何文件中都没有看到“tmp”除了我的 sites-enabled conf (和 sites-available 符号链接(symbolic link)到它)。我还确保在任何 conf 目录中都没有 emacs 粪便( ~ 文件)。

最佳答案

systemd 单元 /lib/systemd/system/apache2.service配置为 PrivateTmp=true , 一个 security feature告诉 systemd挂载一个独立的目录,如 /tmp/systemd-private-59bcc3ad6775562f845953cf01624225-apache2.service-3Rtcsk/tmp超过 /tmpapache2 的文件系统命名空间中进程及其子进程。

比较 sudo ls /proc/$(cat /run/apache2/apache2.pid)/root/tmpsudo ls /tmp .

我建议只选择一个不同的位置。在 /srv 的某处将是典型的。

关于apache 2.4 不会从/tmp 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53993255/

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