我有一个 PHP 文件,hook.php
,看起来像这样:
<?php
`cd .. && git pull`;
该文件位于/var/www/oliverash.me/site/
。然而,需要拉取的git仓库是/var/www/oliverash.me/
. ./site
是 Apache 将其视为文档根的文件夹。
当我在浏览器中运行该文件时,它似乎没有拉取存储库。
我也尝试回显结果,但页面是空白的。
<?php
echo `cd .. && git pull`;
我无法发表评论来回复您,但我假设您正在运行 *nix 系统。如果您的 apache/php 守护进程没有访问权限,您将收到权限被拒绝的信息.git/
。您可以更改所有者/组.git/
目录递归。或者做一个chmod -R o+rw .git/*
授予每个人(即不是所有者,不是组)在 git 目录中读取和写入的权限,这应该会清除您收到的权限错误。
EDIT只需重新阅读问题,因此可能不需要接下来的内容,但以防万一。
不过,这样做时,您需要记住,任何有权访问您服务器的人都可以访问http://myurl/.git/
等来访问这些。因此,作为安全预防措施,我会添加一个.htaccess
文件如:
order deny, allow
deny from all
in the.git
目录,这样 apache 将拒绝 Web 浏览器访问其中的所有内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)