質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
IIS

IIS(Internet Information Services)はマイクロソフト社によって開発されたwebサーバーです。Windows上で動作します。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Windows Server

Windows Serverとは、Microsoft社のサーバ用オペレーティングシステムの総称です。 企業内ネットワークなどで利用されるサーバ機へ導入することを想定して開発されているため高い安定性があり、 管理機能を提供するソフトウェアが多く含まれています。

samba

Samba(サンバ)とは、UNIX系OSにおいてSMBを用いたサービスを提供するためのソフトウェアです。ネットワークを通じて、ファイル共有及びプリンタ共有などのサービスをWindowsマシンへと提供します。ライセンス体系GPLに基づきフリーソフトウェアとして公開されています。

Q&A

解決済

2回答

1005閲覧

httpを使わずWindowsサーバーにファイル転送を行いたい

hatsuzo

総合スコア56

IIS

IIS(Internet Information Services)はマイクロソフト社によって開発されたwebサーバーです。Windows上で動作します。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Windows Server

Windows Serverとは、Microsoft社のサーバ用オペレーティングシステムの総称です。 企業内ネットワークなどで利用されるサーバ機へ導入することを想定して開発されているため高い安定性があり、 管理機能を提供するソフトウェアが多く含まれています。

samba

Samba(サンバ)とは、UNIX系OSにおいてSMBを用いたサービスを提供するためのソフトウェアです。ネットワークを通じて、ファイル共有及びプリンタ共有などのサービスをWindowsマシンへと提供します。ライセンス体系GPLに基づきフリーソフトウェアとして公開されています。

0グッド

0クリップ

投稿2022/10/19 04:57

前提

社内システムで、画面から選択したファイルをWindowsサーバー上にアップロードするアプリ(php)を作っています。
アプリと格納先のフォルダは同じサーバー上にあり、WebサーバはIISを使っています。

格納先のフォルダに対しては、IUSRとIIS_IUSRSのアクセス権を付けてあり、この状態でアップロードとダウンロードができています。

実現したいこと

格納先のフォルダを別サーバーにしたいと思っています。
この時、phpからファイルをアップロードする場合は、httpで転送していると思うので、対象のサーバーでもIISを起動させておく必要があろうかと思います。
このサーバーでWebサーバーを置けない場合、どんな方法が考えられるのでしょうか?
php上で、SMBプロトコルを使ってコピーするようなことは可能でしょうか?
仮に出来たとして、アクセス権はどのように設定すればよいのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2022/10/19 23:16

質問者さん、無言ですが、回答したのでそれに対するフィードバックを返してください。役に立った/立たなかったぐらいはすぐに返せるのでは? 役に立たなかったならどこがダメかを書くとより期待に近い回答が出てくるかも。とにかく無言は NG です。
hatsuzo

2022/10/20 23:49

大変失礼いたしました。 無視するつもりは全くありません。こんなに早くレスポンスを頂けるとは思っておりませんでしたので放置しているような形になってしまいました。申し訳ないです。
退会済みユーザー

退会済みユーザー

2022/11/03 23:48

質問者さん、その後無言ですが、どうなりましたか? 結果を書いてクローズするようにしてください。放置は NG です。
guest

回答2

0

ベストアンサー

格納先のフォルダに対しては、IUSRとIIS_IUSRSのアクセス権を付けてあり、この状態でアップロードとダウンロードができています。

現状で「格納先のフォルダ」にアップロードしたファイルを書きこむのは IIS のワーカープロセス(IIS_IUSRS はワーカープロセスが属するグループ)なのでしょうか? そして、

格納先のフォルダを別サーバーにしたいと思っています。

Active Directory ドメイン環境で、Web サーバーも、その「別サーバー」もドメイン環境に属しているのでしょうか?

であれば、以下の記事に書いてあるように設定して、そのアカウントに「格納先のフォルダ」に書き込み権限を与えれば、Web サーバーのアプリからネットワーク越しに「格納先のフォルダ」にアップロードしたファイルの書き込み書き込みができるはずです。

ネットワークへのアクセス
https://learn.microsoft.com/ja-jp/previous-versions/ee886292(v=technet.10)#%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%B8%E3%81%AE%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9

この時、phpからファイルをアップロードする場合は、httpで転送していると思うので、対象のサーバーでもIISを起動させておく必要があろうかと思います。

その必要はないです。

投稿2022/10/19 06:40

編集2022/10/19 06:42
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hatsuzo

2022/10/21 00:05

コメント遅れまして失礼しました。 データの格納先はADドメインに参加させたクラウドサーバーにしようと思っています。 送るのはWebサーバーなので、転送先は要らない訳ですね。 権限の与え方が分からないので、出来ないと思い込んでいました。 everyoneフルコントロールにする訳にもいかず、ISR等のIISの権限を付けたらうまくいったのですが、 アプリケーション プールという概念は全く知りませんでした。 有難うございます。試してみたいと思います。 これを機にファイルサーバーもクラウドに置くことも検討していたのですが、 Webサーバを置くとすればWebサーバーを立てて管理も面倒になると思っていたので、 敷居が高いと思っていました。 コスト的にも二の足を踏んでいたのですが、これならAWSでいうところのEC2でなく、FSXでも使えるということになりますね。安心しました。 有難うございました。
退会済みユーザー

退会済みユーザー

2022/10/25 22:55

質問者さん、その後無言ですが、どうなりましたか? 結果を書いてクローズするようにしてください。放置は NG です。
hatsuzo

2022/11/07 00:29

結果のつもりだったのですが、クローズが漏れていました。失礼しました。
guest

0

適当なファイルシステムでディレクトリとしてマウントしていれば
普通にcopyコマンドでコピーできると思います
ただしアクセス権はファイルシステム上のものになるので注意が必要です

投稿2022/10/19 05:23

yambejp

総合スコア114843

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hatsuzo

2022/10/21 00:06

コメントありがとうございます。 不勉強なので申し訳ないですが、Webアプリでコピーというのは、SMBプロトコルで転送するということなのでしょうか?PHPでそのようなことは可能なのでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問