我想在我的家庭网络上设置一个测试服务器,这样我就可以在本地开发我的网站,并在解决问题时更新我的网站。今年夏天我开始学习 php(我是我所就读大学的学生工作者),在工作中,我们在 subversion 存储库中建立了网站。然后,我们在与实际站点不同的开发站点上进行工作。当需要更新实时站点时,我的老板会将存储库数据“复制”(我假设我不确定)到实时站点。似乎我的老板不必更改代码中的任何链接等。我认为它“正常工作”的原因是因为在网站上工作的每个人都使用不同的 url 访问开发网站。我的问题是:我如何为自己实现相同(或类似)的服务器设置?如果您想知道我使用的是 Ubuntu 9.04 桌面版,带有(我假设已正确安装)LAMP 服务器。
使用 apache 托管网站。如果缺少 apache、mysql、php 中的某些内容,您可以使用 apt-get 或 synaptic 进行安装。该网站仅通过复制即可工作,可能是因为使用了相对链接而不是绝对链接。
例如,如果您想链接到文件夹 a 内的文件夹 b,那么有两种方法
和
第一个是相对链接,第二个是绝对链接。如果您仅使用相对链接准备网站,则该网站将通过复制粘贴正常工作。
他不必更改链接的原因可能是因为应用程序中的所有内容都使用相对 URL。因此,指向页面的链接将是“/services.html”而不是“ http://www.mydomain.com/services.html ”。
实时站点实际上也可能位于存储库中,在这种情况下,您的老板可能有一个脚本,该脚本将最新版本从 dev repo 下载到 prod repo,然后提交 prod repo。
我假设“幕后”有一个脚本可以从存储库中检索最新更新,然后替换一些数据。例如,开发站点是 dev.net,生产站点是 prod.net,脚本将所有出现的 dev.net 替换为 prod.net,脚本还需要检查与数据库的连接是否指向正确的数据库服务器。