我正在使用Ubuntu 20.04.2 LTS Server
and Apache 2.4.41
。
我已经安装pureFTPd
并mySQL
插入了一些测试用户。用户在前端注册,然后SQL
通过PHP
. 它工作正常。但我希望所有用户都能够托管一个网站。为此,我为Apache
. 这个模组需要在主文件夹中有一个子目录,在我的例子中是public_html。
是否有可能在pureFTPd
创建主目录后立即自动创建此文件夹?
我正在使用Ubuntu 20.04.2 LTS Server
and Apache 2.4.41
。
我已经安装pureFTPd
并mySQL
插入了一些测试用户。用户在前端注册,然后SQL
通过PHP
. 它工作正常。但我希望所有用户都能够托管一个网站。为此,我为Apache
. 这个模组需要在主文件夹中有一个子目录,在我的例子中是public_html。
是否有可能在pureFTPd
创建主目录后立即自动创建此文件夹?
有关您的 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 创建主目录的能力基于模板,这可以按照您想要的方式工作。
当然还有第三种可能更简单的方法:让您的用户管理界面按照您想要的方式创建主目录。