2

Eclipse Helios PDT の使用方法を学習しようとしていますが、ワークスペースからサーバーにファイルを取得する方法がわかりません。PDT のドキュメントは非常にまばらです。

/home/bob/workspace にワークスペースがあり、ローカルの開発 Web ルートは /home/bob/public_html です。

PHP プロジェクトの実行構成を設定すると、サーバーへのパスなどを設定できる場所がわかりますが、実際にプロジェクトを実行するためにファイルを webroot に自動コピーする明らかな方法はわかりません。実行をクリックすると、ブラウザに 404 が表示されます。

たとえば、NetBeans を使用すると、保存時にローカル Web サーバーにコピーしたり、FTP をサーバーにコピーしたりするように PHP プロジェクトを構成できます。PDT には、同様の機能がありませんか?

4

6 に答える 6

2

私は実際にソース管理を使用してファイルを運用サーバーにプッシュしたことはありませんが、興味深い話です。私がしているのは、ANTを使用することです。

ワークスペースをサーバーの場所に直接配置すると、多くの隠しファイルが作成され、ソース管理を使用している場合、これらの隠しファイルはすべてのディレクトリに存在する可能性があることがわかりました。これらをコピーして本番サーバーに貼り付けるだけでは気分が良くありませんでした...

そのため、ワークスペースを設定して、ローカルサーバーではなく、コードを 1 か所に配置しました。テストの準備ができたら、ant スクリプトを実行します。このスクリプトは、必要なすべてのファイルをサーバーにドロップします。次に、準備ができたと感じたら、これらのファイルを本番環境 (ftp など) に移動します。

ローカル用の私のantスクリプトは次のとおりです。

<?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 を押してローカルで変更を確認するよりも、もう 1 つの手順であることに気付きましたが、他の場所への展開がはるかに簡単になります。

楽しむ!

于 2011-02-15T23:15:19.523 に答える
1

ローカルプロジェクトをEclipseワークスペース内に保持する代わりに、プロジェクトを直接「サーバー上」に配置することを検討できます。たとえば、ファイルを保持するサーバーに「ネットワークドライブをマップ」します(これがUNIXサーバーであり、Windowsでプログラミングする場合)。 、次にUNIXサーバーでSambaを使用します)。したがって、変更を保存すると、実際にはサーバー上で直接変更されるため、ブラウザを更新するとすぐに変更が反映されます。

于 2010-12-20T20:41:46.063 に答える
1

実際に FTP/SFTP を設定するのではなく、ソース管理を使用して本番サーバーにファイルをプッシュすることをお勧めします: Git/GitHub、Subversion/Google Code など。ログ/差分/元に戻すと、ローカルファイルに反映されていないサーバーで簡単なハッキングを行う誘惑がなくなります.

于 2010-09-20T03:53:13.297 に答える
0

逆の「プル」展開はどうですか?

ソース管理(たとえばsvnなど)にコミットすると、サーバー上でsvn checkout / updateを発行して、svnサーバーからコードを適切な場所にデプロイできます。

読み取り専用のsvnクレデンシャルを保存するのに問題がない場合は、svnupdateコマンドを実行するある種のデプロイメント.phpページを作成することもできます。

これは明らかにローカル開発環境にとってはやり過ぎです(apacheをワークスペースにポイントするだけです)が、デプロイ前にすべてをsvnにコミットする必要があります(これには、Webサイト上のすべての変更をログに記録するという追加の利点があります)。

于 2011-02-20T13:42:20.983 に答える
0

ボブ、Aptana プラグインをインストールしたら、show view => Studio => App Explorer に移動します。ボックスのようなボタンが表示されます。これをクリックすると、Web 配置ウィザード ボタンがあります。これを使用して、自動的にアップロードすることができます。

于 2014-10-17T13:38:17.997 に答える
0

手っ取り早い解決方法のもう 1 つのヒント: デフォルトの Web サーバー ドキュメント ディレクトリで、ワークスペース ディレクトリを指すシンボリック リンクを使用します。

これは、開発環境のみで問題ありません (私の観点から)。

シンボリックリンクを作成するには: ln -s /home/bob/workspace/your_project_name /home/bob/your_project_name

また、パスのすべての要素に対する Web サーバーの読み取り権限と実行権限が存在することを確認してください。chmod を使用して権限を調整できます。

于 2011-03-07T14:12:36.747 に答える