SNSサイトをPHPで作りたい!初心者向けのアドバイスは?

このQ&Aのポイント
  • HTML、CSSを学んだ後、PHPでSNSサイトを作成したいと考えています。
  • 既存のSNSサイトのソースを参考にすることや、セキュリティの学習などをおすすめします。
  • CMSの使用も検討してみると良いでしょう。
回答を見る
  • ベストアンサー

SNSサイトをPHPで作りたいのですが

私はHTML、CSSを学んだ後、SNSサイトを作りたいと考え、PHPをやり始め、データベース(MySQL)やセッション管理などを一通り学び終えました。 レンタルサーバー(XREA)も借りて準備万端(?)といったところです。 そこで早速SNSサイトを作りたいと考えたわけですが、何かアドバイスありますか? 例えば、、、 ・まず何からやり始めればいいのか(他のSNSサイトのソースを見て参考にしてからのほうがいのか等) ・セキュリティについてはどの程度学べばいいのか。学ぶとしたらどの文献を参考にしたらいいのか。 ・CMSは使った方がよいか?(オススメのCMSなどがあれば教えてください) よろしくお願いします。

  • PHP
  • 回答数6
  • ありがとう数9

質問者が選んだベストアンサー

  • ベストアンサー
noname#247307
noname#247307
回答No.4

質問をざっと拝見して、頭に浮かんだことをいくつか。 ・レンタルサーバーを選択する、というのは今の時代、ありえない気がします。なぜクラウドを使わないのか?という疑問ですね。万が一、人気が出てアクセスが急増したときどうするのか。クラウドならスケールアップ/ダウンがとても簡単です。 ・CMSというより、SNSの設計という段階で普通はMVCフレームワークが出てくると思うのですが、そのあたりはどう考えているのでしょう。 他にもいろいろ疑問点はありますが、個人的な意見で無責任にいわせてもらうなら、「四の五のいわずにとっとと作ってしまえ」ということですね。 とりあえず、ひと通り動くもの(アクセスしてエラーが出ないレベル)を作って、友人知人でいいので使ってもらう。で、実際に使ってもらえば、「あれがダメだ」「これがダメだ」という苦情やツッコミがどんどん出てきます。それを片っ端から対処していくのです。もちろん、プログラムが暴走するようなレベルのものは公開してはいけませんが、自分で作ってひと通り動かして「大丈夫」と思ったら、とにかく他人に使ってもらうことを考えたほうがいいと思います。 セキュリティについてなどは、最初から万全なわけがありません。何か穴を見つけたらすぐに塞ぐ、をひたすら繰り返すしかありません。これは日々、ひたすら勉強あるのみです。1冊や2冊の本を読んだくらいで鉄壁のシステムなんて作れるわけがありませんし。 そうやって、公開してから半年一年とひたすらトラブルに対応し続ければ、それなりのノウハウも蓄積されていくはずです。そうなったところで一般に公開し、本格的に広めていけばいいでしょう。くれぐれも、最初から完璧に作ろうとか、作れるとか考えてはいけません。「自分が最初に作れるのは、穴だらけのひどいシステムなんだ」と割りきり、それをどんどん改良していくんです。 昔と違い、今は誰でも自分で作って公開することが可能な世の中になっているんですから。「山ほど知識があるが何も作らない」人間より、「わずかな知識でも何かを作る」人間のほうが得るものはきっと多いはずですよ。

tonkatu05
質問者

補足

丁寧なご指摘、アドバイスありがとうございます! >レンタルサーバーを選択する、というのは今の時代、ありえない気がします。なぜクラウドを使わないのか?という疑問ですね。万が一、人気が出てアクセスが急増したときどうするのか。クラウドならスケールアップ/ダウンがとても簡単です。 恥ずかしながらクラウドという選択肢があるのを知りませんでした。調べてみたらアクセスが多いサイトではクラウドにするべきだということはなんとなくわかりました。しかし、現段階でアクセス数が大量に増えるとは考えにくいので、アクセス数が増えるまではレンタルサーバーでも平気ですか?見たところクラウドは料金も高そうですし。 >CMSというより、SNSの設計という段階で普通はMVCフレームワークが出てくると思うのですが、そのあたりはどう考えているのでしょう。 これまた恥ずかしながらMVCフレームワークというのを知りませんでした。FuelPHPなどですよね。 調べてみましたが、簡単に実装できて便利そうですね。やはりMVCフレームワークの方が良いのでしょうか。 本当に色々アドバイスありがとうございます! 何を使って作るか決めたらバンバン作っていきたいと思います!

その他の回答 (5)

noname#247307
noname#247307
回答No.6

>アクセス数が増えるまではレンタルサーバーでも平気ですか?見たところクラウドは料金も高そうですし。 クラウドといってもいろいろあります。Google App EngineやHeroku、OpenShiftといったサービスは、一定のアクセス枠内なら無料です。それ以上にリソースを消費するようになったらその分だけ必要な料金を払う、という感じです。探すと、無料で始められるところは意外とありますよ。 ただ、PHPをサポートするクラウドは意外と少ないのですよね……。ですので、PHPにこだわるなら、当面、レンタルサーバーというのも一つの手だと思います。ただ、私個人は、レンタルサーバーはかったるくてやってらんねーという思いが強いのでクラウド一択です。このへんは好みの問題もありますね。 >調べてみましたが、簡単に実装できて便利そうですね。やはりMVCフレームワークの方が良いのでしょうか。 どちらもピンきりですので、どちらがいいか?という問題では無いと思います。開発するサイトにはどちらが適しているか?ですね。 ただ、開発の勉強ということも兼ねて考えるなら、何かしっかりしたMVCフレームワークを一つ使って学びながら作ったほうが、後々残るものが多いように思えます。MVCフレームワークは、現在のサーバーサイド開発の一つのスタイルとして定着しています。このMVCフレームワークの考え方や設計思想などを知っているというのは、開発者として大きな武器となるはずですから。

tonkatu05
質問者

お礼

色々参考になりました! 丁寧な回答ありがとうございました!

  • pringlez
  • ベストアンサー率36% (598/1630)
回答No.5

まず、サーバーを借りるのは最後です。まずは自分の家でサーバーを建ててそこである程度動くものを作ってからの話です。一から作るのなら3ヶ月以上はかかると思いますし。先にレンタルサーバーを借りるのは、自動車学校の入校手続きをする前に駐車場を借りる契約をするようなものです。 無料とのことなのでまぁいいかもしれませんが。で、最初はクラウドよりレンタルサーバーで正解だと思います。どのくらいの人に利用してもらえるのかわからないし、すぐにやめてしまうかもしれないのに、わざわざ割高なクラウド借りるのは賢い選択だとは思えません。アクセス数が月10万を超えたあたりから検討してもいいとは思いますけど。 >・まず何からやり始めればいいのか(他のSNSサイトのソースを見て参考にしてからのほうがいのか等) まずは何を作るのか考える。どんな機能・どんなデザインのページを作るのか、HTMLでとりあえず作ります。ある程度力のある人ならわざわざ人のソースなど見なくとも実装できると思いますが、勉強不足なら人のソースを見て勉強してもいいと思います。 >・セキュリティについてはどの程度学べばいいのか。学ぶとしたらどの文献を参考にしたらいいのか。  - SQLインジェクション  - XSS:クロスサイトスクリプティング  - CSRF の3つが何かとその対策を学ぶだけでいいと思います。書籍など買う必要はなく、適当にWebで検索した結果を見るだけでOKです。 >・CMSは使った方がよいか?(オススメのCMSなどがあれば教えてください) それはあなたが何をしたいのかを考えた上で決めることです。勉強のためできるだけ自分で作りたいのか、それとも勉強をする気はなく自由度は低くともできるだけ自分はコーディングせずに楽に仕上げたいのか。 勉強のためだったら自分で作ったほうがいいと思いますけど。 フレームワークを使うならCakePHPがいいのではないかと思います。メジャーで広く使われているので、そういう仕事をする際に「CakePHPは趣味で使ってました」と言えればポイント(やや)高いと思いますので。

tonkatu05
質問者

お礼

参考になりました! ありがとうございます!

  • coai
  • ベストアンサー率50% (152/301)
回答No.3

>レンタルサーバー(XREA)も借りて準備万端(?)といったところです。 うーん、一番最後でいいことを真っ先にしてしまったか…といったところです。 まあ、XREAには無料版もあったはずなので、それなら(料金の問題は発生しないので)いつでもいいと言えばいいんですが…。 ※とは言え、スペースだけ借りて長期間放置状態の契約者は、無料レンタルサーバー運営者にとってみれば迷惑な存在ですがね。 まずは、レンタルサーバーを借りるのではなく、XAMPPなどを使ってローカルで作り込む必要がありますね。 最低限試験運用可能なレベルまで作ってから、レンタルサーバーを借りるべきでした。 仮にCMSを使う場合でも同様。 いきなりレンタルサーバーでテストしてはいけない。 ローカルでテストして、自分なりに「これでいける」と判断した後にレンタルサーバーに手を出すべきです。

tonkatu05
質問者

補足

回答ありがとうございます! 現在、XREAの無料レンタルサーバーを借りています。HTMLとCSSで作った自分のホームページを作って載せているので無駄にはしていません。 また、PHPの学習の際にXAMPPで実際にプログラムしながら練習していました。 今回も使っていこうと考えています。

回答No.2

まさか、流石に無料サーバや激安サーバじゃないですよね?? SNSサイトなら負荷が掛かるのでサーバ丸ごと一台借りないと無理ですよ 共用サーバで自作PHP暴走させたら賠償金支払うことになりますよ。

  • agunuz
  • ベストアンサー率65% (288/438)
回答No.1

自分で設計して「作る」のが目的なのか、単に「使う」のが目的なのか・・・ >CMSは使った方がよいか?(オススメのCMSなどがあれば教えてください) 使いたいだけならOpenPNEでも設置すればいいんじゃないでしょうか。 「作る」となると、「一通り学び終えました」という段階では先が長いです。 >セキュリティについてはどの程度学べばいいのか と言う時点で、自分で作ったモノを安定運用するのは無理そうです。習得して終わりという性質のものではありません。常に留意して最新の情報に気を配っていないとダメです。当然文献なんかありません(文献に載っている内容は「最低限」だと思ってください)。既存のCMSのバージョンアップの内容なども参照してみてください。

関連するQ&A

  • CMS サイト構築について。

    現在、登録制ポータルサイトを製作したい考えております。 作業期間が限られている為。 基本機能である、ログイン、ログアウト、検索機能、メッセージ機能 を作る作業を省きたいと考えております。 そこで、この基本機能を兼ね備えたCMSで、※ソース等をいじりたい。 独自でプログラムした機能を組み込めるCMSを探しているのですが、 中々見付からずこまっています。 どなたかCMSについて詳しい方がいたら情報をください。 おねがいします。 開発技術 PHP MySQL HTML CSS

    • ベストアンサー
    • PHP
  • php+mySQLの勉強をしたい

    HTML+CSSの知識しかないのですが mySQLをphpで利用するサイトを作ってみたいです。 勉強するためのおすすめの本やサイトはありますか?

    • ベストアンサー
    • PHP
  • Xoopsについて教えてください。PHPを知らないと何も出来ませんか?

    xoopsというCMSがあるかと思うのですが、私はそれを使ってデザイン面を事細かにカスタマイズして行こうと考えたのですが、知人からxoopsをカスタマイズするならPHPを勉強しないと何も出来ないよ!とお叱りを受けてしまいました。 これは本当でしょうか?? 多分本当なのでしょうが、私はPHPに関しては全く何も分からない状況ですが、デザインだけでもHTMLとCSSで何とか自由にカスタマイズできないものでしょうか? 何度も色々なサイトを見るのですが、なにやらhtml以外の複雑なことが書いてあり、正直よく分かりませんでした・・・。smartry??とか書いてあったような??? 私の希望は、デザインだけでOKです。 HTMLとCSSだけで出来る、出来ないも含めて、何でも結構ですのでアドバイスいただけたら幸いです。 以上、宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • PHP会員サイト(認証機能)

    ログイン→(ID、パスワードで振り分け) 会員ページまたは管理者ページ 会員ページではブログやコメントなどを公開 (複数ページ有、各ページでID、パスワードのセッション確認) 管理者ページでは会員登録、削除、更新など (各ページでID、パスワードのセッション確認)) データベース MySQL 上記のような会員サイト(PHP)をお持ちの方いませんか? 無料もしくは格安で譲っていただける方いませんか? 無料でそのようなサイトがあれば教えて下さい。 (レンタルサーバーで使用可能なもの)

    • 締切済み
    • PHP
  • 料理サイトを作るにあたって・・・

    こんばんわ。 現在料理(レシピ)データベースを作ろうと思ってます。 HTML・CSS・PHP(少し)の知識はあります。しかし、MYSQLという高度な知識は全くない状態であります。 何千ページと作成して、リンクやアンカーポイントを用いて作る方が早いのでしょうか? 是非よろしくお願いします。

    • ベストアンサー
    • MySQL
  • 下記の様な会員サイトをPHP+Mysqlで作成しようとしております。

    下記の様な会員サイトをPHP+Mysqlで作成しようとしております。 http://reroom.jp/ 機能としては、上記のサイトとまったく一緒で、 会員登録が出来て、好きな人(ページ)をフォローし、それぞれマイページが持てるといったサイトです。 そこで、制作で参考になるようなサイトか、 サンプルがあって、そのまま流用出来るようなサイトを教えていただけないでしょうか? PHP初心者の為、分かりやすいサイトが希望です。 ちなみにwebデザイナーなので、HTML&CSSは理解しております。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • phpからmysqlを使う入門サイトを探しています。

    phpからmysqlを使う入門サイトを探しています。 phpからmysqlを使う入門サイトをいくつか見ますと、コマンドラインからデータベースを作成して、その後phpでそのデータをみるところからスタートするのですが、当方の環境にはコマンドラインがないために、「その後phpでそのデータをみる」が出来ずに、学習が進んでおりません。 コマンドラインを一切利用しないphpからmysqlを使う入門サイトはないでしょうか?

    • ベストアンサー
    • MySQL
  • PHPの設定でMySQLを有効にするには?

    現在Windowsを使ってPHPなどの勉強をしています PHPのプログラム上からデータベース(MySQL)に接続したいので、MySQLを有効にするためにphp.iniの「;extension=php_mysql.dll」から「;」を取るとMySQLが有効になると参考書には書いてあるのですが、有効になりません。 何か設定が足りないのでしょうか? 教えてください!!

    • 締切済み
    • PHP
  • PHPサイトとHTMLサイト、どっちが速い?

    現在、私はホームページ・ビルダーを使ってHTMLサイトを制作し、さくらのレンタルサーバを使用してアフィリエイトをしています。 WordPressやMovableType等で作ったPHPサイトは、HTMLサイトに比べて速いのでしょうか? ご存じの方がいらっしゃいましたら、教えてください。

  • PHPの実務レベルはどのぐらいでしょうか?

    現在、HTML、CSS、Javascript(+jQuery)を習得し、Webコンテンツの作成ができる程度になり、PHPを習得しようとしております。 実際に、PHP+MySQLで、Ajaxチャットなどを作成したことはあります。 フレームワークはまだ使ったことはありません。 PHPを習得するにあたって、職業で実務として使えるレベルがどのくらいなのか分かりませんので、教えていただきたいです。 今後の参考とさせていただきたいと考えております。

    • ベストアンサー
    • PHP

専門家に質問してみよう