Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
In dieser Anleitung wird beschrieben, wie Sie mit Compute Engine einen Apache-Webserver auf einer VM-Instanz bereitstellen. Weitere Informationen zu den Technologien, die Sie für das Web-Serving inGoogle Cloudverwenden können, finden Sie unter Hosting-Option inGoogle Cloudauswählen.
Eine VM in Compute Engine kann wie jeder Standard-Linux-Server gesteuert werden. Stellen Sie einen Apache-Webserver bereit, um sich mit den Grundlagen der Ausführung eines Servers auf einer VM-Instanz vertraut zu machen.
Vorbereitung
Erstellen Sie eine Linux-VM, die HTTP-Traffic zulässt. Gehen Sie dazu so vor:
Optional: Beim Erstellen einer Linux-VM können Sie das Kästchen HTTP-Traffic zulassen anklicken, um Port tcp:80 für Traffic zu öffnen, und das Kästchen HTTPS-Traffic zulassen anklicken, um Port tcp:443 zu öffnen. Wenn Sie jedoch einen anderen Port öffnen möchten, konfigurieren Sie die Firewall nach dem Erstellen der VM. Konfigurieren Sie dann Apache für die Verwendung der Firewall.
Klicken Sie in der Zeile der VM auf SSH, um eine Verbindung zu der soeben erstellten Linux-VM herzustellen.
Verwenden Sie den Systempaketmanager für das jeweilige Betriebssystem, um die verfügbaren Pakete zu aktualisieren und das Paket apache2 zu installieren.
Wenn Sie die Kurzanleitung befolgt haben, wird eine Ubuntu-VM erstellt. Führen Sie den folgenden Befehl aus, um eine Ubuntu-VM zu aktualisieren:
sudo apt update && sudo apt -y install apache2
Nach der Installation von Apache startet das Betriebssystem den Apache-Server automatisch.
Prüfen Sie, ob Apache ausgeführt wird:
sudo systemctl status apache2
Überschreiben Sie die Standardwebseite des Apache-Webservers:
Kopieren Sie die externe IP-Adresse für die VM aus der Spalte Externe IP-Adresse.
Gehen Sie in einem Browser zu http://[EXTERNAL_IP]. Stellen Sie keine Verbindung mit https her, da der Server dann den Fehler Connection Refused zurückgibt.
Jetzt sollten Sie die Seite „Hello World!“ sehen.
Bereinigen
Löschen Sie die VM, um nach Abschluss der Experimentierphase Gebühren für die VM zu vermeiden. Weitere Informationen finden Sie unter Bereinigen.
Fehlerbehebung
Fehler Connection Refused wird empfangen
Wenn der Fehler Connection Refused angezeigt wird, ist Folgendes möglich:
Ihre VM-Instanz ist nicht öffentlich zugänglich, weil Ihre Firewallregeln oder -Tags auf eine der folgenden Arten falsch konfiguriert sind:
Die VM-Instanz hat kein geeignetes Tag, mit dem Compute Engine die entsprechenden Firewallregeln auf Ihre Instanz anwenden kann.
Ihr Projekt hat keine Firewallregel, die den Traffic zur externen IP-Adresse für Ihre Instanz zulässt.
Sie greifen über eine https-Adresse auf die VM zu. Ihre URL sollte
http://[EXTERNAL_IP] und nicht https://[EXTERNAL_IP] lauten.
So sorgen Sie dafür, dass Ihre VM-Instanz die richtigen Tags enthält:
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:
Klicken Sie auf den Namen der Instanz, zu der Sie eine Verbindung herstellen möchten.
Klicken Sie oben auf der Seite auf Bearbeiten.
Scrollen Sie nach unten zu Firewalls und prüfen Sie, ob das Kästchen HTTP-Traffic zulassen angeklickt ist. Ist dies nicht der Fall, klicken Sie das Kästchen an.
Speichern Sie die Änderungen. Dadurch wird gewährleistet, dass die richtigen Tags zur VM-Instanz hinzugefügt werden.
So sorgen Sie dafür, dass die richtige Firewallregel existiert:
Rufen Sie in der Google Cloud Console die Seite Firewallregeln auf.
Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie einfach ein Konto, um die Leistungsfähigkeit von Compute Engine in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-08-19 (UTC)."],[[["\u003cp\u003eThis tutorial guides you through deploying an Apache web server on a Compute Engine virtual machine (VM) instance, providing a foundation for running a server on a VM.\u003c/p\u003e\n"],["\u003cp\u003eThe process involves creating a Linux VM, connecting to it via SSH, and installing the \u003ccode\u003eapache2\u003c/code\u003e package using the system package manager, which will automatically start the server.\u003c/p\u003e\n"],["\u003cp\u003eYou can verify Apache is running, overwrite the default web page with custom content, and then test the server by accessing its external IP address in a web browser using \u003ccode\u003ehttp://[EXTERNAL_IP]\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eTroubleshooting steps are provided for resolving "Connection Refused" errors, which often involve checking firewall rules and ensuring that the VM allows HTTP traffic on port 80, along with confirming the correct URL format is used.\u003c/p\u003e\n"],["\u003cp\u003eAfter completion, the guide suggests exploring further options such as hosting a full website or setting up LAMP stack on Compute Engine.\u003c/p\u003e\n"]]],[],null,["# Running a basic Apache web server\n\nThis tutorial shows you how to use Compute Engine to deploy an Apache web\nserver on a virtual machine (VM) instance. To learn more about the technologies\nthat you can use for web serving on\nGoogle Cloud, see [Choosing a hosting option on\nGoogle Cloud](/architecture/web-serving-overview#choosing_an_option).\n\nA VM on Compute Engine can be controlled like\nany standard Linux server. Deploy an Apache web server to learn the\nbasics of running a server on a VM instance.\n\nPrerequisites\n-------------\n\nCreate a Linux VM that allows HTTP traffic by doing the following:\n\n1. Create a new Linux VM. For more information, see [Quickstart using a Linux\n VM](/compute/docs/create-linux-vm-instance).\n\n 1. Optional: While creating a Linux VM, you can select the **Allow HTTP\n traffic** checkbox to open port `tcp:80` for traffic and **Allow HTTPS\n traffic** checkbox to open port `tcp:443`. However, if you want to open a different port, [configure the firewall](/vpc/docs/using-firewalls) after creating the VM, and then [configure Apache](https://httpd.apache.org/docs/2.4/bind.html) to use the firewall.\n2. Connect to the Linux VM. For more information, see [Connect to the\n VM instance](/compute/docs/create-linux-vm-instance#connect_to_the_vm_instance).\n\nInstall Apache\n--------------\n\n1. In the Google Cloud console, go to the **VM Instances** page.\n\n [Go to VM instances](https://console.cloud.google.com/compute/instances)\n2. To connect to the Linux VM you just created, click **SSH** in the row of the VM.\n3. To update the available packages and\n install the `apache2` package, use the system package manager for that operating system.\n If you followed the Quickstart, this creates an Ubuntu VM. To update an\n Ubuntu VM, run the following command:\n\n sudo apt update && sudo apt -y install apache2\n\n After installing Apache, the operating system automatically starts the\n Apache server.\n4. Verify that Apache is running:\n\n sudo systemctl status apache2\n\n5. Overwrite the Apache web server default web page:\n\n echo '\u003c!doctype html\u003e\u003chtml\u003e\u003cbody\u003e\u003ch1\u003eHello World!\u003c/h1\u003e\u003c/body\u003e\u003c/html\u003e' | sudo tee /var/www/html/index.html\n\nTest your server\n----------------\n\nTest that your VM is serving traffic on its external IP.\n\n1. In the Google Cloud console, go to the **VM Instances** page.\n\n [Go to VM instances](https://console.cloud.google.com/compute/instances)\n2. Copy the external IP for your VM under the **External IP** column.\n3. In a browser, navigate to `http://[EXTERNAL_IP]`. Don't connect using `https` because this causes the server to return a `Connection Refused` error.\n\nYou should now see the \"Hello World!\" page.\n\nClean up\n--------\n\nTo avoid incurring charges for the VM after you're done experimenting, delete\nthe VM. For more information, see [Clean up](/compute/docs/create-linux-vm-instance#clean-up).\n\nTroubleshooting\n---------------\n\n**Receiving a `Connection Refused` error**\n\nIf you are seeing a `Connection Refused` error, it is possible that:\n\n- Your VM instance is not publicly accessible because your firewall rules or\n tags are misconfigured in one of the following ways:\n\n - The VM instance does not have the proper tag that allows Compute Engine to apply the appropriate firewall rules to your instance.\n - Your project does not have a firewall rule that allows traffic to the external IP address for your instance.\n- You are trying to access the VM using an `https` address. Check that your\n URL is `http://[EXTERNAL_IP]` rather than `https://[EXTERNAL_IP]`.\n\nTo ensure that your VM instance has the correct tags:\n\n1. In the Google Cloud console, go to the **VM instances** page.\n\n [Go to VM instances](https://console.cloud.google.com/compute/instances)\n2. Click the name of the instance that you are trying to connect to.\n3. Click **Edit** at the top of the page.\n4. Scroll down to **Firewalls** , and make sure the **Allow HTTP traffic** box is checked. If it is not checked, check it.\n5. Save your changes. This ensures that the correct tags are added to the VM instance.\n\nTo ensure that the correct firewall rule exists:\n\n1. In the Google Cloud console, go to the **Firewall rules** page.\n\n [Go to Firewall rules](https://console.cloud.google.com/networking/firewalls)\n2. Look for a firewall rule that allows all IP ranges through tcp:80. Usually, this rule is named the `default-allow-http` rule.\n3. If a rule does not exist, create one.\n 1. Click **Create firewall rule**.\n 2. Enter a name for the rule, such as `default-allow-http`.\n 3. Under **Source IP ranges** , enter `0.0.0.0/0` to allow traffic from all sources.\n 4. Under **Protocols and ports** , check **Specified protocols and ports** and enter `tcp:80`.\n 5. Create your firewall rule.\n\nTest your server again by going to the external IP address of the instance: \n\n http://[EXTERNAL_IP]\n\nWhat's next\n-----------\n\nLearn how to [host a website on Compute Engine](/solutions/web-serving-overview).\n\nLearn how to [set up LAMP on Compute Engine](https://github.com/GoogleCloudPlatform/community/blob/master/archived/setting-up-lamp/index.md).\n\nTry it for yourself\n-------------------\n\n\nIf you're new to Google Cloud, create an account to evaluate how\nCompute Engine performs in real-world\nscenarios. New customers also get $300 in free credits to run, test, and\ndeploy workloads.\n[Try Compute Engine free](https://console.cloud.google.com/freetrial)"]]