我可以永久更改 Plesk 中的“httpdocs”吗?
我想要将 DocumentRoot 从 更改/var/www/vhost/<domain>/httpdocs
为 /var/www/vhost/<domain>/web/htdocs
目前,我正在 /conf/vhost.conf 中进行更改,然后更新 /usr/local/psa/admin/sbin/websrvmng -u --vhost-name=domain.com
但每个域名都要花费几分钟,而且我必须为使用我开发的软件的每个添加的域名都执行此操作。
答案1
小心编辑 Plesk 文件(甚至是 apache 配置)——许多都是自动生成的,并且会在某个阶段被 Plesk 覆盖。
一个简单的解决方案(尽管这会稍微减慢 apache 的速度)是在httpd.conf
symlink 中启用符号链接(请注意没有尾随斜杠!):
ln -s /var/www/vhost/<domain>/web/htdocs /var/www/vhost/<domain>/httpdocs
为了实现此自动化(包括创建新目录和移动,如果需要):
for i in $(find /var/www/vhosts/ -maxdepth 1 -mindepth 1); do
mkdir "$i/web"
mv "$i/httpdocs" "$i/web/htdocs"
# create the symlink
ln -s "$i/web/htdocs" "$i/httpdocs"
done
另一个选项是vhost.conf
为每个域创建文件并将其加载到配置中,这里有一个演练这里。