我希望直接访问版本库中的 内容并且像访问目录一样,可以自动执行php,可以直接访问图片等。
在apache中已经加载了svn模块并且通过
<location> DAV svn SVNPath "/Users/mike/opt/svn" </location>
打开了svn的http访问。但是在http://localhost/svn
中php会被直接打开(可以看到内容)而图片却打不开(一片空白)
回复内容:
我希望直接访问版本库中的 内容并且像访问目录一样,可以自动执行php,可以直接访问图片等。
在apache中已经加载了svn模块并且通过
<location> DAV svn SVNPath "/Users/mike/opt/svn" </location>
打开了svn的http访问。但是在http://localhost/svn
中php会被直接打开(可以看到内容)而图片却打不开(一片空白)
apache的svn模块只能提供svn预览功能,是无法用来直接执行文件的。因为svn在服务器上不是按一个个文件存放的,而是以一定的格式存放在数据文件中。svn模块就是用来解析这种格式的。
如果你想svn提交后立即预览效果,可以使用svn hook的功能,所谓svn hook,就是允许你在提交版本之前或之后插入自己需要执行的命令。
首先在服务器上创建一个以后用来访问的web目录,比如这样(权限问题自己搞定)
mkdir /wwwroot/svn-preview/
在apache里面配置好这个目录的php运行环境,保证它可以被访问。
然后check out一份代码到这个目录(自己替换svn的url)
svn co http://my-svn-host/my-svn-path /wwwroot/svn-preview/ --username=my-svn-username
现在我们搞定了一份最新版的代码,并可以访问它了。然后要解决的是自动同步的问题。找到svn的repos目录,从你的例子上看,似乎是/Users/mike/opt/svn
这个目录。
cd /Users/mike/opt/svn/hooks ls
可以看到这里存放了很多hook的模版文件(以tmpl结尾的,你只需要把后缀名去掉,自己改动一下就可以生效了)。我们需要的是提交后同步,因此找到post-commit.tmpl
,把他拷贝一份
cp post-commit.tmpl post-commit chmod +x post-commit vim post-commit
这时候打开了hook文件,里面有个例子是关于每次提交后发送个邮件提醒的,用#
加在行首,把它们注释掉,我们用不着它。在最后面增加我们的命令,其实就是一行
svn up /wwwroot/svn-preview/ --username=my-svn-username --password=my-svn-password
提交个文件到svn,然后访问看看是不是正常同步了。
之前配置svn的时候还要加上字源编码才能同步
export LANG=zh_CN.UTF8
svn up /wwwroot/svn-preview/ --username=my-svn-username --password=my-svn-password

本文讨论了PHP中的crypt()和password_hash()之间的差异,以进行密码哈希,重点介绍其实施,安全性和对现代Web应用程序的适用性。

文章讨论了通过输入验证,输出编码以及使用OWASP ESAPI和HTML净化器之类的工具来防止PHP中的跨站点脚本(XSS)。

自动加载PHP会在需要时自动加载类文件,从而通过减少内存使用和增强代码组织来提高性能。最佳实践包括使用PSR-4和有效组织代码。

本文讨论了在PHP中管理文件上传大小的管理,重点是2MB的默认限制以及如何通过修改PHP.INI设置来增加它。

本文讨论了PHP 7.1中引入的PHP中的无效类型,允许变量或参数为指定类型或NULL。它突出显示了诸如提高可读性,类型安全性和明确意图的好处,并解释了如何声明

本文讨论了unset()和unlink()功能在编程中的差异,重点关注其目的和用例。 unset()从内存中删除变量,而unlink()从文件系统中删除文件。两者都对效率至关重要


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

SublimeText3 Linux新版
SublimeText3 Linux最新版

记事本++7.3.1
好用且免费的代码编辑器