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

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

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

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

Q&A

解決済

2回答

1913閲覧

サーバー構築のアドバイスをお願いいたします

dpjgt4034

総合スコア13

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

0グッド

0クリップ

投稿2016/08/26 14:46

こんばんは。
この度はウェブサービス公開時のサーバー構築の際の設計につきまして、アドバイス頂きたく存じます。
現在ウェブサービスを考えておりまして、Web版およびiOS版の公開を考えております。
その上で、そのサービス公開の際のサーバーおよびウェブアプリケーションの設計方法につきまして、イメージがわかないため質問およびアドバイスをお願いしたく存じます。

通常、このようにウェブサービスをクロスプラットフォームで公開する際、ウェブアプリケーションはそれぞれに作成し、かつウェブアプリケーションを設置するドメインは別個にするのでしょうか?
Web版およびiOS版双方ともウェブアプリケーションはCakePHPを考えております。
その上で、取得したドメイン(例えばexample.com)に対してWeb版においては、ユーザーがwww.example.comにアクセスした際にそのドキュメントルートから、CakePHPを使用したサービス構築を行うと思いますのでらWeb版においては設計のイメージがわきます。
しかしながら、iOS版においては、上記の様な設計方法が浮かびません。
と言いますのも、同一ドメインにおいてiOS用のCakePHPを同様に設置した際に、ユーザーがブラウザを通してアクセスしてきてしまうため、不都合が発生するのではないかと懸念しております。
それ故に、同一ドメイン下に複数のウェブアプリケーションを配置した際の設計方法のイメージが湧かずに困っているという状態です。
それを防ぐために例えばサブドメインを取得し、ウェブアプリケーションを振り分けるということをするのでしょうか?
わかりずらくてすみませんが、何卒アドバイスのほどよろしくお願いいたします。

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

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

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

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

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

guest

回答2

0

ベストアンサー

以下がクロスプラットフォームでよくある方法

レスポンシブレイアウト

  1. www.example.jp (PC+スマートフォン)

ドメイン分離

  1. www.example.jp (PC)
  2. sp.example.jp (スマートフォン)

ディレクトリ分離

  1. www.example.jp (PC)
  2. www.example.jp/sp (スマートフォン)

ルーティング設定例

index.{ext}

index.php HTML 形式
index.xml XML 形式
index.json JSON 形式

みたいに 返却方式を変更すればいいのです(API 方式)

投稿2016/08/26 14:52

編集2016/08/26 15:43
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

dpjgt4034

2016/08/26 15:29

コメントありがとうございます。 Webにおけるクロスプラットフォームの管理方法につきましては、大変参考になりました。ありがとうございます。 その上で、大変すみませんが、少々言葉が不足しておりました。 iOS版と記載しましたのは、webからアクセスするユーザーエージェントがスマートフォンのものではなく、iOSネイティヴアプリになります。 今回の場合、Web版(もちろんデスクトップとスマートフォンで分けますが)とiOSネイティヴアプリの作成を考えており、それらを同一ドメイン下でCakePHPで管理したいと考えております。 その際におきましても、Web版であればwww.example.comにWeb版用のCakePHPを置き、iOSネイティヴアプリであれば、例えばwww.ios.example.comの様なサブドメイン下にiOSネイティヴアプリ用のCakePHPを置くことで管理するというのがよろしいでしょうか? お手数ですが、ご教授のほどよろしくお願いいたします。
guest

0

上記3点に加えて、cake側でviewをスマホ用に切り替える方法もあります。
ユーザーエージェントなどで判断するか、ユーザーが明示的にスマホ版もしくはPC版の表示に切り替えたいというリンクを押したときに、その情報をクッキーなどに残しておき、cake側はその情報をみてviewを切り替える方法です。

ただ、一番手間がかからないのはレスポンシブレイアウトを使う方法です。今のサイトはほとんどのがこの方法です。

投稿2016/08/26 15:23

編集2016/08/26 15:24
CodeLab

総合スコア1939

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

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

dpjgt4034

2016/08/26 15:28

コメントありがとうございます。 すみません、少々言葉が不足しておりました。 iOS版と記載しましたのは、webからアクセスするユーザーエージェントがスマートフォンのものではなく、iOSネイティヴアプリになります。 今回の場合、Web版(もちろんデスクトップとスマートフォンで分けますが)とiOSネイティヴアプリの作成を考えており、それらを同一ドメイン下でCakePHPで管理したいと考えております。 その際におきましても、Web版であればwww.example.comにWeb版用のCakePHPを置き、iOSネイティヴアプリであれば、例えばwww.ios.example.comの様なサブドメイン下にiOSネイティヴアプリ用のCakePHPを置くことで管理するというのがよろしいでしょうか? お手数ですが、ご教授のほどよろしくお願いいたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問