ホームページ >バックエンド開発 >PHPチュートリアル >無料の専用 Web サーバーをセットアップする: ステップバイステップ ガイド
すべての優れた Web サイトの背後には優れたサーバーがあります。このチュートリアルでは、自宅の古いコンピューターといくつかのフリー ソフトウェアを使用して、専用 Web サーバー (Apache、MySQL、および PHP を使用) をセットアップする方法を説明します。 p>
このチュートリアルの目標は、いくつかのことを達成することです:
なので、私は通常 Ubuntu を使用しています。 シンプルな管理。また、その背後には大規模で非常に活発なコミュニティがあり、そのおかげで
ブリーズをサポートします。
を実行するためのバックボーンが提供されます。 あなたのウェブページ。 Apache は、Unix ベースのオペレーティング システム上の業界標準の Web サーバーです。これは、ほとんどの Web ホストが行っている機能です。 use (NETTUTS は現在それを使用しています!)、それが私たちが使用するものです。
サーバーを不正アクセスから保護するためにファイアウォールをインストールします。
サーバーとして使用されるコンピューター。強力である必要はありません。古いものでない限り、問題なく動作するはずです。お願いします###### デスクトップ コンピュータではこれを行わないでください。Ubuntu によってコンピュータが完全に消去されてしまいます。
ということで、始めましょう!
2.
Ubuntu サーバーをダウンロード
まず、Ubuntu が含まれる CD が必要です。 Web ブラウザで http://www.ubuntu.com/,
ここで、ISO (ダウンロードしたファイル) を空の CD に書き込む必要があります。これを行う方法がわからない場合は、
を使用できます。 優れたガイドは https://help.ubuntu.com/community/BurningIsoHowto
にあります。3.
Ubuntu サーバーをインストールします
ISO をダウンロードして書き込んだので、サーバーに Ubuntu をインストールしましょう。ディスクをドライブに置き、CD から起動します。最近のほとんどのコンピュータでは、ドライブを開いたときにディスクがドライブ内にある場合、これがデフォルトで発生します。そうでない場合は、キーボードを開くときにキーボードのキーを押す必要があります。私のラップトップの場合は F12、サーバーの場合は F2 です。それはあなたのコンピュータに依存します。 BIOS 中にコンピュータの電源を入れたときに、画面上のテキストを確認することで見つけることができます。 「Press [KEY] to change boot order」のようなメッセージが表示されます。このキーを押して、CD ドライブを選択します。
言語を選択して Enter を押します。次の画面が表示されます:
「Ubuntu サーバーのインストール」を選択すれば準備完了です。
インストーラーは、キーボード レイアウトを検出するかどうかを尋ねます。個人的には、
という理由で、私は常に「いいえ」を選択します。 リストから標準の US キーボードを選択する方が、インストーラーに検出させるよりも高速です。どのオプションでも問題ありません。
画面上の指示に従ってください。これを完了すると、「CD-ROM ドライブの検出」などのロード画面が多数表示されます。 これらは問題なくすぐに完了するはずです。ただし、これらの画面中に、インストーラーは を自動的に構成しようとします。 ネットワーク設定。ほとんどの場合、これは問題なく動作します。ただし、うまくいかない場合は、 に従ってください。 画面上の指示に従って操作します。
これをすべて実行すると、ホスト名を尋ねられます。通常は任意の値に設定できますが、私は常に
に設定します。 私の「ウェブサーバー」。
次に、時計のタイムゾーンを設定するように求められます。私にとってそれは太平洋です。当てはまるものを 1 つ選択してください。 あなた。
これで、システムはさらに多くのハードウェアを検出し、「ディスクのパーティション分割」を求めるプロンプトが表示されます。 「ブート全体を使用」を選択します
ディスク"。###
次に、パーティションを分割するディスクを選択する必要があります。ほとんどのセットアップでは、使用できるディスクは 1 つだけですが、
より特殊なシステムの場合は、ここでさらに多くのオプションが利用可能になります。該当するものを選択してください。
変更をディスクに書き込むかどうかを尋ねられます。 「はい」を選択し、Enter キーを押します。インストーラーは続行されます
ドライブをフォーマットし、パーティションを設定します。今、奇跡が起こりました。システムによりインストールが開始されます。こうなったら、コーヒーを飲みに行きましょう。これはどこにでも持ち運べます 10分から1時間程度。それはあなたのシステムに依存します。時々、固まっているように見えることがありますが、心配しないでください。 しかし実際にはそうではありません。ただやるべきことをやらせてください。しかし、それがオブジェクト上に 1 時間以上留まると、はい、凍結されます。
システムのインストールが完了したので、ログインするアカウントを設定する必要があります。まずは
を全力でプレイしてください 名前を付けて「続行」をクリックします。
次に、ユーザー名を付けます。通常は、あなたの名前
に設定するだけです。 しかし、それを変えることはできます。使用できない名前の 1 つは「root」です。
次に、パスワードの入力を求められます。強力なパスワードを選択する必要があります。そうしないとサーバーが無効になります。 安全でなければなりません。少なくとも数字、小文字、大文字を組み合わせることをお勧めします。ただし、私のサーバーの場合は
私は記号だけでなく、上記の記号を組み合わせて使用します。 7 文字未満のパスワードは使用しないでください。
次に、パスワードを再入力して、入力したパスワードが正しいことを確認します。
システムは「パッケージ マネージャー」を構成しようとします (これが何であるかについては、すぐに説明します)。
を入力してください プロキシ情報。プロキシを使用していない場合は空白のままにして、「続行」を選択します。
システムは複数のサーバーをスキャンして更新と構成設定を確認します。
完了すると、サーバー ソフトウェアをインストールするためのいくつかのオプションが表示されます。さあ、よく聞いてください。
OpenSSH サーバーを選択し、Enter キーの代わりにスペースバーを押します。 Enter キーを押すと、OpenSSH サーバーをインストールせずにインストールが続行されます。
「LAMP サーバー」をインストールすることもできますが、このオプションの経験がないため、別の方法でインストールします 後で注文してください。
システムは、選択したソフトウェアを他のシステム コンポーネントとともにインストールします。
いよいよインストールが完了します。 CD を取り出して Enter キーを押します。コンピュータが再起動します。すべてがうまくいけば、
# 表示される画面は次のようなものです:
###おめでとう!これで最も難しい部分が完了しました。 Ubuntu がインストールされました。このコンピューターを
に変えましょう。 ネットワークサーバー。
4.
新しいサーバーを更新します
続行する前に、サーバーが最新であることを確認する必要があります。これを行うには、ログインする必要があります。まず、ユーザー名
を入力してください(前に選択したもの)、Enter キーを押してパスワードを入力します。パスワードを入力すると、何も表示されていないことがわかります
それは起こっているようです。心配しないでください。そのように設計されています。パスワードを入力したら、Enter、
を押します。 すべてがうまくいけば、画面は次のようになります:
次に、次のように入力します:
リーリーパスワードの入力を求められますが、パスワードを入力しても何も表示されません。これが完了すると、
かどうかを尋ねられます。 継続したいと考えています。 「y」を入力して Enter キーを押します。画面は次のようになります:
これで、システムはすべての最新のアップデートをダウンロードしてインストールします。インターネット接続によっては、これには時間がかかります。後###### 完了しました。コンピュータを再起動する必要があります。これを行うには、次のように入力します:
リーリーそして再起動します。これでサーバーは完全に更新されました。
「Sudo」に関する簡単なメモ
が必要だからです。 管理者権限、それが「sudo」の役割です。機能させるために管理者としてコマンドを実行します (つまり、「シャットダウン」)
適切です。そのため、パスワードの入力を求められます。ただし、「sudo」を 1 回入力してパスワードを入力すると、
5 分間はパスワードを再度入力する必要はありません。すべてのコマンドに sudo が必要なわけではなく、システムの一部を変更するコマンドのみが必要です。
これらをマスターしましたか?とても良い。
WordPress などの一般的なアプリケーションを実行できるように、データベース サーバー (MySQL) とサーバー側言語 (PHP) も必要です。それで、###### はじめましょう!
Ubuntu へのプログラムのインストールは、Windows や Windows へのプログラムのインストールとは大きく異なります
OS X、Ubuntu は、簡単なコマンドでプログラムをダウンロードしてインストールします。これは、Ubuntu には
というソフトウェアがあるためです。
パッケージ マネージャー。システム上のほぼすべてのプログラムを管理します。私たちがしなければならないのは、パッケージ マネージャーに
を伝えることだけです。 (「aptitude」と呼ばれます) Apache、MySQL、および PHP をインストールする必要があります。これを行うには、次のコマンドを入力します: リーリー 次に Enter を押します。 Aptitude は、指定したプログラムをダウンロードしてインストールします。また、あらゆるものをダウンロードしてインストールします
依存関係。
インストール プロセス中に、MySQL は root パスワードの入力を求めます。任意の値に設定できますが、長くて安全であることを確認してください。
何をする場合でも、これを空白のままにしないでください。
すべてが完了すると、Web サーバーが完全に動作するようになります。テストするには、まず次のように入力してサーバーの IP を見つけます:
リーリー
通常は最初の IP が返されます。私の場合は 192.168.177.129 です。 IP がわかったので、Web ブラウザを開いてそれをポイントします。
サーバーのIPアドレスに。 「動作しました!」というメッセージが表示されたら、正常に動作しました。
しかし、まだ終わっていません。 Apache や PHP がそれ自体に関する情報を漏洩することは望ましくありません。なぜなら、それは必要ないからです。 ユーザーによって実行されると、セキュリティ上のリスクが生じる可能性があります。まず、元の Apache 構成ファイルをバックアップします:
リーリー 次に、構成ファイルを開きます:
リーリー「ServerTokens Full」と表示されるまで下 (下矢印) にスクロールし、「ServerTokens Prod」に変更します。
次に、さらに下にスクロールして、「ServerSignature On」を「ServerSignature Off」に変更します。
最後に、Control-O を押してから Control-X を押します。これにより、ファイルが保存され、テキスト エディタが終了します。
次に、同じことを PHP で行う必要があります。まず、元の PHP 構成ファイルをバックアップします:リーリー
設定ファイルを開く:
sudo nano /etc/php5/apache2/php.ini
将“expose_php = 开”更改为“expose_php = 关”
再次按 Control-O,然后按 Control-X。现在配置文件已更新,重新启动 Apache:
sudo /etc/init.d/apache2 restart
您已完成 Apache、MySQL 和 PHP 的设置。
我们现在将通过安装 Shorewall(一种命令行防火墙)来进一步锁定我们的服务器。安装它:
sudo aptitude install shorewall
默认情况下,Shorewall 安装时没有任何规则,允许完全访问。然而,这不是我们想要的行为。
相反,我们将阻止除端口 80 (HTTP) 和端口 22 (SSH) 之外的所有连接。首先复制配置
文件到 Shorewall 目录:
sudo cp /usr/share/doc/shorewall-common/examples/one-interface/* /etc/shorewall/
现在,打开“规则”文件:
sudo nano /etc/shorewall/rules
在“#LAST LINE”上方添加这些行
HTTP/ACCEPT net $FW SSH/ACCEPT net $FW
然后按 Control-O 和 Control-X。您的防火墙现已配置为仅接受 HTTP 和 SSH 流量。我们需要做的最后一件事
要做的就是告诉 Shorewall 在启动时启动。因此,打开主 Shorewall 配置文件:
sudo nano /etc/shorewall/shorewall.conf
向下滚动到“STARTUP_ENABLED=No”并将其设置为“STARTUP_ENABLED=Yes”
按 Control-O 和 Control-X。现在,打开 Shorewall 默认配置文件:
sudo nano /etc/default/shorewall
并将“startup=0”更改为“startup=1”。按 Control-O 和 Control-X。最后,启动防火墙:
sudo /etc/init.d/shorewall start
恭喜!您的防火墙现已设置并保护您的服务器。
现在您已完成所有设置,您可能想向其中添加一个网站。默认情况下,Apache 提供的所有文件
互联网上的地址位于“/var/www/”。但是,您无法写入此文件夹。让我们做到这一点,以便您可以:
sudo usermod -g www-data [YOUR USERNAME] sudo chown -R www-data:www-data /var/www sudo chmod -R 775 /var/www
发生的情况是,您将自己添加到“www-data”组,并使网站文件夹对“www-data”成员可写
组。
现在,您将使用 SFTP(不要与 FTPS 混淆)登录服务器。一些支持 SFTP 的客户端有:
WinSCP(Windows,免费),FileZilla(Windows,Linux,OS X,免费),
Cyberduck(OS X,免费),以及我个人最喜欢的 Transmit
(OS X,30 美元)
使用您的用户名和密码连接到您的服务器,如果您的客户端支持,则使用默认路径“/var/www”(如果不支持,则使用默认路径)
登录后只需浏览到 /var/www ):(传输如图)
您现在可以将文件添加到此文件夹 (/var/www),当您使用您的浏览器浏览该文件夹时,它们将显示在您的服务器上
网络浏览器。
现在,您可能想知道为什么我们使用 SFTP 而不是 FTP。主要是因为 SFTP 已内置于 OpenSSH(您安装的)
较早)。然而,它也比 FTP 安全得多,并且使恶意用户很难(如果不是不可能)获得访问权限
您的登录凭据。
如今,大多数现代家庭网络都位于路由器后面。因此,如果没有
,您的网络服务器将不会对互联网可见。 一点工作。由于我没有可用的所有路由器进行测试,因此我只能为您提供该领域的一般指导。
有两种方法可以将服务器开放到互联网:DMZ 或端口转发。您会注意到的主要区别是,对于 DMZ,您的服务器使用
我们之前安装的防火墙是为了保护自身。但是,通过端口转发,您的服务器将受到路由器防火墙的保护。
但是,在我们继续之前,您需要为您的服务器提供一个静态 LAN 地址。为此,请登录您的路由器,然后查找某些内容
类似于“静态 IP”或“静态路由”。为服务器提供静态 LAN 地址后,您可以执行接下来的部分。请记住,
Google 是您的朋友。
要转发,有一个很棒的网站,PortForward.com,虽然丑陋,但可以
帮助您完成几乎所有路由器的工作。您要转发的端口是 22 和 80。
要创建 DMZ,您需要登录路由器并查找“DMZ 设置”之类的内容。找到它后,将您的服务器添加到
DMZ,然后您就可以了。同样,Google 在这种情况下会很有帮助。
さあ、パブリック IP を見つけて完成です!どこからでもサーバーにアクセスできます。
IPは変わらないからね。
OpenSSH では、ファイルをアップロードできるだけでなく、IP がわかっていればどこからでもサーバーにログインできます。 Windows の場合は、
となります。 SSH クライアントが必要です。パテをお勧めします。 OS X の場合、SSH は
です インストールされました。ターミナルを開いて「ssh you@yourip」と入力するだけです。 Putty の場合は、SSH を選択し、IP、ユーザー名、パスワードを入力します
と聞かれると。ログインすると、サーバー上の画面とまったく同じように見えることがわかります:
ここからは、実際にサーバー上で実行することであれば何でも実行できます。サーバーからログアウトするには、「exit」と入力して Enter キーを押します。
これで、完全に機能する Web サーバーが完成しました。これは優れたテストの場であり、トラフィックがかなり少ない Web サイトをホストするのにも適しています。明らかに学ばなければならないことはたくさんありますが、Web サーバーがどのように機能するかについてはすでにある程度理解していただければ幸いです。 私が取り上げるトピックについてさらに詳しく知りたい場合は、ここにいくつかの優れたガイドがあります:
###ソフトウェアをインストールする###
Apache、MySQL、および PHP のセットアップ
以上が無料の専用 Web サーバーをセットアップする: ステップバイステップ ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。