ASP.NET MVC 3/4でのWebサイト開発については十分に書かれています。 少なくとも、何が自分自身を開発し始めますか。 ただし、ホスティング/サーバーに転送する方法についてはほとんど何も書かれていません。 私にとって、LinuxホスティングとPCPから来た人として、パネル自体、フォルダー、およびプロジェクトのコンパイルはすべて新しいものでした。 マニュアルがあります-長い間苦労しているなら、グーグルで検索できます。 ただし、「サイトのレイアウト、サイトの転送、サイトの拡張、サイトの作成」という要求は、実際には結果をもたらさないことが判明しました。 または、十分に裏返す必要があります。 この状況での正しいリクエストは、「サイトの公開」です。 ただし、Habrには、Windows Azure Webサイトの作成とそこへのASP.NET MVC 4アプリケーションの展開 、および更新されたWindows AzureへのASP.NET MVCサイトの公開 が 1つしかありません。 ただし、これはAzureによるものです。
また、Visual Studio 2012からホスティングに直接サイトを公開する方法がないという問題に遭遇しました-これを許可しないプロキシがあります。 FileZillaを介して接続しますが-許可します。 問題が何なのかわかりません。管理者のところに行きました。彼らは手を広げて、問題は私のWindows 8 Proにあると言いました。 わかった そのような問題ではありません。
まあ、ホスティングコントロールパネル自体。 マニュアルはありますが、1か所で特に作業の開始とサイトの展開について説明しています-十分な情報がありません。 特に、このプロセスのわずかに「異なる」ロジックに慣れている「新参者」またはPHPの場合。 はい、情報の一部は英語です。 プログラマは驚かないでください。 しかし、何も起こりません。
ホスティングから始めましょう。 パネルは次のようになります。
注意写真!
Parallels Plesk Panelの外観
データベースの作成。 データベースに接続するための設定を変更します。
最初にデータベースを作成します。 これを行うには、[サイトとドメイン]-[データベース]-[データベースの追加]に移動します。 作成するデータベースを選択します。 MySqlとMsSqlを選択できます。 名前を入力してください。
「データベース」に戻ります。 作成したばかりを選択します。
「ユーザーの追加」を選択します。 必要なデータを入力してください。
それだけです すべてのデータを記憶しています。 Web.configを開き、データベースへの接続文字列を変更します。「カタログ」はデータベースの名前、「ユーザー」はユーザーの名前、「パスワード」はパスワードです。
<add name="DefaultConnection" connectionString="Data Source=.\MSSQLSERVER2008;Integrated Security=false;Initial Catalog=hedinco_zf2;User ID=dub;Password=1qaz2wsx" providerName="System.Data.SqlClient" />
また、プロジェクトを転送するときに、「LocalSqlServer」という名前の接続名が原因でエラーが発生しました。 Googleで解決策を見つけました。 この名前の接続文字列を追加します。 その結果、接続セクションは次のようになります。
<connectionStrings> <add name="DefaultConnection" connectionString="Data Source=.\MSSQLSERVER2008;Integrated Security=false;Initial Catalog=hedinco_zf2;User ID=dub;Password=1qaz2wsx" providerName="System.Data.SqlClient" /> <remove name="LocalSqlServer" /> <add name="LocalSqlServer" connectionString="Data Source=.\MSSQLSERVER2008;Integrated Security=false;Initial Catalog=hedinco_zf2;User ID=dub;Password=1qaz2wsx" providerName="System.Data.SqlClient" /> </connectionStrings>
必要に応じて、DbContextの接続を追加します。
サイトをコンパイルする前の追加設定
同じWeb.configに行を追加する必要があります。
<system.web> <customErrors mode="Off"/> ....
コンパイル中に一連のdllがbinフォルダーにコピーされたことを確認する必要があります。
- System.Web.Helpers
- System.Web.Mvc
- System.Web.Razor
- System.Web.WebPages
- System.Web.WebPages.Deployment
- System.Web.WebPages.Razor
これを行うには、「参照」ソリューションブラウザーで必要なライブラリを見つけ、必要に応じてプロパティで「ローカルにコピー」を「False」から「True」に変更します。 通常は真。 しかし、チェックは傷つきません。
また、デフォルトページの出力に問題があったことに注意してください。 物理的には、アドレス「 hedin.com.ua 」と「 hedin.com.ua/home/index 」は同じコントローラーとメソッドを指します。 しかし、最初のケースでは、「 hedin.com.ua/cgi-sys/defaultwebpage.cgi 」にスローされ、エラーが発生しました
Server Error in '/' Application. The resource cannot be found. Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly. Requested URL: /cgi-sys/defaultwebpage.cgi
RouteConfig.csファイルの空のアドレスにルートを追加すると、すべてが正常になりました。
routes.MapRoute( name: "Root", url: "", defaults: new { controller = "Home", action = "Index" } );
サイトの編集と公開
デバッグが開始された場合、デバッグを停止します。
ソリューションエクスプローラーで目的のプロジェクトを選択し、マウスの右ボタンをクリックして[公開...]を選択します。
最初に表示されるのはプロファイルです。 そうでない場合は、ドロップダウンリストで[作成]を選択します。
次のタブは「接続」です。 FTPを介した直接アクセスがないため、「ファイルシステム」を選択します。コンパイル済みサイトをコピーしてサーバーにアップロードする準備ができているパパを選択します。 「FTP」を選択して、すぐにホスティングにアップロードすることもできます。 次に、接続データを指定する必要があります。
次。 「オプション」。 [リリース/デバッグ]を選択します。 「既存のファイルを削除する」ボックスをチェックします。 Visual Studioで機能していたサイトの正確なコピーを常に取得するため。
ウィンドウの右下隅にある「公開」ボタンをクリックします。
など。 必要なファイルを取得しましたが、サーバーにコピーするために残されていました。
サイトをFTPホスティングにコピーする
FileZillaまたは他の便利なFTPクライアントを開きます。 サーバーに接続します。 次のディレクトリツリーがあります。
「httpdocs」フォルダーに移動します(Linuxサーバーの「www / public / public_html」に相当)。 そして、(ホスティングが新しい場合)すべてのコンテンツを削除するか、必要なフォルダー/ファイルを更新するだけです。 ディレクトリの内容を、Visual Studioがサイトを公開した場所にコピーします。
ASP.NET設定の編集
管理パネルの[サイトとドメイン]で、[追加の操作を表示(非表示)]、[ASP.NET設定]ボタンを選択します。
「バージョンを変更」ボタンがあります。 正しいものを選択してください。 デフォルトでは2でした。4を選択しました。ホスティングをサポートするネットワークを使用してVisual Studioでプロジェクトを作成する必要があることに注意してください。 4.5の下で作成しようとしました-開始しませんでした(たとえば、PHP 5.4およびホスティング5.3でサイトを作成しても、プロジェクトで「チップ5.4」を使用しない場合、サイトは正常に機能します)。
保存をクリックします。
それだけです ブラウザにアクセスし、DNSが既に更新されリンクされている場合(ホスティングドメイン)、インターネット上でWebサイトが機能していることがわかります。
VSが作成した標準プロジェクトで勉強しました。
ドメインがまだホスティングに関連付けられていないか、まだ購入されていない場合は、ホスティングのIPを使用して参照できます。 これを行うには、管理パネルの「ウェブサイトとドメイン」に移動します。 一番下までスクロールします。 ドメインの名前が表示されますが、ボタンは表示されません。 そのうちの1つでは、サイトのプレビューを作成できます。
追伸 不正確、間違い、または改善方法がある場合は、可能であればそれを知って修正します。