0

我正在使用Ubuntu 20.04.2 LTS Serverand Apache 2.4.41

我已经安装pureFTPdmySQL插入了一些测试用户。用户在前端注册,然后SQL通过PHP. 它工作正常。但我希望所有用户都能够托管一个网站。为此,Apache. 这个模组需要在主文件夹中有一个子目录,在我的例子中是public_html

是否有可能在pureFTPd创建主目录后立即自动创建此文件夹?

4

1 回答 1

0

有关您的 pureFTPd/mysql 设置的一些详细信息会有所帮助。

TL;DR:PureFTPd 不支持主目录模板/骨架 https://serverfault.com/questions/615487/create-home-directory-from-skeleton-upon-ftp-first-login

此外,userdir apache 模块依赖系统身份验证将用户名映射到主目录,如果您只设置 pureFTPd 来查询 mysql 用户数据库,它将无法按您期望的方式工作。

您需要使用 libpam-mysql 和 libnss-mysql 等组件将此 mysql 数据库作为系统身份验证库,鉴于此设置,您可以使用 pam-mkhomedir 使用此 public_html 文件夹启动主目录模板。

但是,我不建议这样做,基于 mod-rewrite 的解决方案,其 username.domain.tld 映射到 /path/to/ftp/user/htdocs 可能会更安全,并结合 Pro-FTPd 创建主目录的能力基于模板,这可以按照您想要的方式工作。

当然还有第三种可能更简单的方法:让您的用户管理界面按照您想要的方式创建主目录。

于 2021-02-12T09:22:29.950 回答