ホームページ データベース mysql チュートリアル Apache、MySQL、PHP、および仮想ホストを使用して堅牢な Ubuntu Web サーバーを作成する方法

Apache、MySQL、PHP、および仮想ホストを使用して堅牢な Ubuntu Web サーバーを作成する方法

Sep 28, 2024 pm 06:07 PM

How to Create a Robust Ubuntu Web Server Using Apache, MySQL, PHP, and Virtual Hosts

使用完整的 Ubuntu 設定指南輕鬆部署和管理您的 Web 開發環境

Web 伺服器的重要性

網頁伺服器是任何網站的支柱,作為向全球用戶提供內容的平台。網路伺服器的效率和可靠性對於您在線業務的成功至關重要。

Ubuntu、Apache、MySQL、PHP 與虛擬主機概述

本文將指導您在Ubuntu上建立一個完整的Web伺服器環境,使用Apache作為Web伺服器,MySQL作為資料庫伺服器,PHP作為腳本語言。我們還將介紹虛擬主機的建立和配置,它允許您在單一伺服器上運行多個網站。

文章目的

本指南的目的是提供在 Ubuntu 上設定強大的 Web 伺服器的詳細逐步流程,專為初學者和進階使用者量身定制。

初步設定

選出正確的硬體

在開始軟體安裝之前,確保您的硬體足以完成您將要執行的任務非常重要。根據預期負載考慮 CPU 功率、RAM 和儲存容量等因素。

安裝 Ubuntu 伺服器

  • 從 Ubuntu 官方網站下載最新版本的 Ubuntu Server。
  • 建立可啟動 USB 隨身碟並在​​您的電腦上安裝 Ubuntu Server。
  • 依照螢幕上的指示完成安裝。

更新與升級 Ubuntu

安裝 Ubuntu 後,必須更新和升級系統以確保所有軟體包都是最新的。

sudo apt update
sudo apt upgrade
ログイン後にコピー

安裝 Apache

了解 Apache Web 伺服器

Apache 是使用最廣泛的 Web 伺服器之一,以其穩健性、靈活性和廣泛的模組支援而聞名。
安裝 Apache 的步驟

使用以下指令安裝 Apache :

sudo apt install apache2
ログイン後にコピー

啟動並啟用 Apache

啟動 Apache 服務並使其開啟:

sudo systemctl start apache2
sudo systemctl enable apache2
ログイン後にコピー

驗證 Apache 安裝

要驗證 Apache 是否正在執行,請使用下列指令:

sudo systemctl status apache2
ログイン後にコピー

安裝 MySQL

了解 MySQL 資料庫伺服器

MySQL 是一個強大的關聯式資料庫管理系統,用於儲存和管理網站和應用程式的資料。

安裝 MySQL 的步驟

使用指令安裝MySQL:

sudo apt install mysql-server
ログイン後にコピー

確保 MySQL 安裝的安全性

要保護您的 MySQL 安裝,請執行安全腳本:

sudo mysql_secure_installation
ログイン後にコピー

依照指示設定 root 密碼、刪除匿名使用者並保護資料庫。

測試 MySQL 功能

登入 MySQL shell 以確保其正常運作:

sudo mysql -u root -p
ログイン後にコピー

安裝 PHP

了解 PHP 腳本語言

PHP 是一種流行的伺服器端腳本語言,用於 Web 開發。它特別適合創建動態內容並與資料庫互動。
安裝 PHP 的步驟

使用以下指令安裝 PHP:

新增 Ondrej PHP PPA,它總是提供最新的穩定 PHP 版本:

sudo add-apt-repository ppa:ondrej/php
sudo apt update
ログイン後にコピー

安裝最新的 PHP 版本:

sudo apt install php libapache2-mod-php
ログイン後にコピー

安裝常用 PHP 擴充:

sudo apt install php-mbstring php-mysql php-curl php-cli php-dev php-imagick php-soap php-zip php-xml php-imap php-xmlrpc php-gd php-opcache php-intl
ログイン後にコピー

重新啟動 Apache

sudo systemctl restart apache2
ログイン後にコピー
ログイン後にコピー

*為 Laravel 安裝 Composer *

更新套件管理器

首先,請確保您的系統已更新:

sudo apt update
ログイン後にコピー

安裝所需的依賴項

確保安裝了curl和php-cli:

sudo apt install curl php-cli unzip
ログイン後にコピー

下載並安裝 Composer

執行以下命令在 Ubuntu 上安裝 Composer :

curl -sS https://getcomposer.org/installer -o composer-setup.php
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
ログイン後にコピー

驗證安裝

檢查Composer是否安裝成功:

composer --version
ログイン後にコピー

設定虛擬主機

虛擬主機說明

虛擬主機可讓您在單一伺服器上託管多個網域。每個網域都可以有自己單獨的配置,包括文檔根目錄、日誌檔案等。

為網站建立目錄結構

為您的新網站建立目錄:

sudo mkdir /var/www/
ログイン後にコピー

設定適當的權限

Ensure the correct ownership and permissions :

sudo chown -R $USER:$USER /var/www/
sudo chmod -R 777 /var/www/
ログイン後にコピー

Creating a Virtual Host File

Create a configuration file for your site :

sudo nano /etc/apache2/sites-available/000-default.conf
ログイン後にコピー

Add the following configuration:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerAlias *
    UseCanonicalName Off
    VirtualDocumentRoot /var/www/%0

    <Directory "/var/www">
        AllowOverride All
        Require all granted
        Options Indexes FollowSymLinks
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
ログイン後にコピー

Enabling the New Virtual Host

Enable the new site and test the configuration:

sudo a2ensite 000-default.conf
sudo apache2ctl configtest
ログイン後にコピー

Restarting Apache

Restart Apache to apply the changes:

sudo systemctl restart apache2
ログイン後にコピー
ログイン後にコピー

Editing the Hosts File

Map your domain to the local server by editing the hosts file:

sudo nano /etc/hosts
ログイン後にコピー

Add the following line:

127.0.0.1       demo
ログイン後にコピー

以上がApache、MySQL、PHP、および仮想ホストを使用して堅牢な Ubuntu Web サーバーを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

MySQLの役割:Webアプリケーションのデータベース MySQLの役割:Webアプリケーションのデータベース Apr 17, 2025 am 12:23 AM

WebアプリケーションにおけるMySQLの主な役割は、データを保存および管理することです。 1.MYSQLは、ユーザー情報、製品カタログ、トランザクションレコード、その他のデータを効率的に処理します。 2。SQLクエリを介して、開発者はデータベースから情報を抽出して動的なコンテンツを生成できます。 3.MYSQLは、クライアントサーバーモデルに基づいて機能し、許容可能なクエリ速度を確保します。

Innodb Redoログの役割を説明し、ログを元に戻します。 Innodb Redoログの役割を説明し、ログを元に戻します。 Apr 15, 2025 am 12:16 AM

INNODBは、レドログと非論的なものを使用して、データの一貫性と信頼性を確保しています。 1.レドログは、クラッシュの回復とトランザクションの持続性を確保するために、データページの変更を記録します。 2.Undologsは、元のデータ値を記録し、トランザクションロールバックとMVCCをサポートします。

MySQL対その他のプログラミング言語:比較 MySQL対その他のプログラミング言語:比較 Apr 19, 2025 am 12:22 AM

他のプログラミング言語と比較して、MySQLは主にデータの保存と管理に使用されますが、Python、Java、Cなどの他の言語は論理処理とアプリケーション開発に使用されます。 MySQLは、データ管理のニーズに適した高性能、スケーラビリティ、およびクロスプラットフォームサポートで知られていますが、他の言語は、データ分析、エンタープライズアプリケーション、システムプログラミングなどのそれぞれの分野で利点があります。

MySQL Index Cardinalityはクエリパフォーマンスにどのように影響しますか? MySQL Index Cardinalityはクエリパフォーマンスにどのように影響しますか? Apr 14, 2025 am 12:18 AM

MySQLインデックスのカーディナリティは、クエリパフォーマンスに大きな影響を及ぼします。1。高いカーディナリティインデックスは、データ範囲をより効果的に狭め、クエリ効率を向上させることができます。 2。低カーディナリティインデックスは、完全なテーブルスキャンにつながり、クエリのパフォーマンスを削減する可能性があります。 3。ジョイントインデックスでは、クエリを最適化するために、高いカーディナリティシーケンスを前に配置する必要があります。

初心者向けのMySQL:データベース管理を開始します 初心者向けのMySQL:データベース管理を開始します Apr 18, 2025 am 12:10 AM

MySQLの基本操作には、データベース、テーブルの作成、およびSQLを使用してデータのCRUD操作を実行することが含まれます。 1.データベースの作成:createdatabasemy_first_db; 2。テーブルの作成:createTableBooks(idintauto_incrementprimarykey、titlevarchary(100)notnull、authorvarchar(100)notnull、published_yearint); 3.データの挿入:InsertIntoBooks(タイトル、著者、公開_year)VA

MySQL対その他のデータベース:オプションの比較 MySQL対その他のデータベース:オプションの比較 Apr 15, 2025 am 12:08 AM

MySQLは、Webアプリケーションやコンテンツ管理システムに適しており、オープンソース、高性能、使いやすさに人気があります。 1)PostgreSQLと比較して、MySQLは簡単なクエリと高い同時読み取り操作でパフォーマンスが向上します。 2)Oracleと比較して、MySQLは、オープンソースと低コストのため、中小企業の間でより一般的です。 3)Microsoft SQL Serverと比較して、MySQLはクロスプラットフォームアプリケーションにより適しています。 4)MongoDBとは異なり、MySQLは構造化されたデータおよびトランザクション処理により適しています。

InnoDBバッファープールとそのパフォーマンスの重要性を説明してください。 InnoDBバッファープールとそのパフォーマンスの重要性を説明してください。 Apr 19, 2025 am 12:24 AM

Innodbbufferpoolは、データをキャッシュしてページをインデックス作成することにより、ディスクI/Oを削減し、データベースのパフォーマンスを改善します。その作業原則には次のものが含まれます。1。データ読み取り:Bufferpoolのデータを読む。 2。データの書き込み:データを変更した後、bufferpoolに書き込み、定期的にディスクに更新します。 3.キャッシュ管理:LRUアルゴリズムを使用して、キャッシュページを管理します。 4.読みメカニズム:隣接するデータページを事前にロードします。 BufferPoolのサイジングと複数のインスタンスを使用することにより、データベースのパフォーマンスを最適化できます。

MySQL:構造化データとリレーショナルデータベース MySQL:構造化データとリレーショナルデータベース Apr 18, 2025 am 12:22 AM

MySQLは、テーブル構造とSQLクエリを介して構造化されたデータを効率的に管理し、外部キーを介してテーブル間関係を実装します。 1.テーブルを作成するときにデータ形式と入力を定義します。 2。外部キーを使用して、テーブル間の関係を確立します。 3。インデックス作成とクエリの最適化により、パフォーマンスを改善します。 4.データベースを定期的にバックアップおよび監視して、データのセキュリティとパフォーマンスの最適化を確保します。

See all articles