繁体   English   中英

Eclipse PDT,如何获取服务器上的文件?

[英]Eclipse PDT, how do I get the files on the server?

我正在尝试学习如何使用Eclipse Helios PDT,但我不明白如何将文件从工作区获取到服务器。 PDT文档非常稀少。

我的工作区在/ home / bob / workspace中,我的本地开发webroot是/ home / bob / public_html。

如果我为我的php项目设置运行配置,我会看到我可以在哪里设置服务器的路径等,但我没有看到任何明显的方法将文件自动复制到我的webroot以实际运行项目。 如果我点击运行,我只需在浏览器中获得404。

例如,使用NetBeans,您可以将PHP项目配置为保存到本地Web服务器,FTP到服务器等.PDT是否没有某种类似的功能?

我从来没有真正使用源代码控制将文件推送到生产服务器,但这听起来很有趣。 我做的是使用ANT。

我发现通过将工作区直接放在服务器位置,它会创建大量隐藏文件,如果使用源代码控制,这些隐藏文件可以位于每个目录中。 我觉得将这些复制并粘贴到我的生产服务器中感觉不对...

所以:我设置我的工作区以将代码放在一个位置,而不是在我的本地服务器上。 当我准备测试时,我运行ant脚本。 此脚本将我想要的所有文件都删除到服务器上。 然后,如果我觉得它已经准备好了,我只是将这些文件移动到生产(ftp或其他)。

这是我的本地蚂蚁脚本:

<?xml version="1.0" encoding="UTF-8"?>

<project default="init" basedir=".">

<target name="init">
    <echo message="Copying files to C:/Sandbox/xampp/htdocs"/>
    <sync todir="C:/Sandbox/xampp/htdocs">
        <fileset dir=".">
            <include name="**/*.html" />
            <include name="**/*.htm" />
            <include name="**/*.php" />
            <include name="**/*.css" />
            <include name="**/*.js" />
            <include name="**/*.jpg" />
            <include name="**/*.png" />
            <include name="**/*.gif" />
            <exclude name="env.php"/>
        </fileset> 
    </sync>
</target>

</project>

你会注意到我排除了一个名为“env.php”的文件。 该文件包含特定的环境代码。 像数据库名称这样的东西在本地和生产之间是不同的。

我意识到这比仅仅点击ctrl-s然后点击F5以在本地看到更改还要多一步,但它使其他地方的部署更加简单。

玩得开心!

我建议您实际上不要设置FTP / SFTP,而是使用源代码控制将文件推送到生产服务器:Git / GitHub,Subversion / Google Code等。您还可以获得能够获得的附带好处记录/差异/恢复,你将消除在服务器上快速破解本地文件中没有反映的诱惑。

您可以考虑在Eclipse Workspace中保留一个本地项目,将项目直接“放在服务器上” - 例如“将网络驱动器”映射到具有文件的服务器(如果这是一个unix服务器,并在windows中编程) ,然后在unix服务器上使用Samba)。 因此,当您保存更改时,实际上是在服务器上直接更改它,因此当您刷新浏览器时,更改将立即反映出来。

鲍勃,如果你安装了Aptana插件,那么去show view => Studio => App Explorer你会看到一个框查看按钮。 如果单击此按钮,则会显示Web部署向导按钮。 您可以使用它来自动上传。

反向“拉”部署怎么样?

一旦您提交源代码控制(例如svn),您就可以在服务器上发出svn checkout / update,以便从您的svn服务器部署代码。

如果您在保存一些只读svn凭证时没有问题,您甚至可以使用某种部署.php页面来执行svn update命令

对于本地开发环境来说这显然是过度的(只需将apache指向您的工作区),但它确保您必须在部署之前将所有内容提交到svn(这样可以记录网站上的每个更改。)

快速而肮脏的解决方案的另一个提示:在默认的Web服务器文档目录中使用符号链接,该目录将指向您的工作区目录。

对于开发环境,这是可以的(我的观点)。

创建符号链接:ln -s / home / bob / workspace / your_project_name / home / bob / your_project_name

还要确保对于路径的所有元素,Web服务器都存在读取和执行权限。 您可以使用chmod调整权限。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM