<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://lms.onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Proses_deployment_aplikasi_web_menggunakan_Apache</id>
	<title>Proses deployment aplikasi web menggunakan Apache - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://lms.onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Proses_deployment_aplikasi_web_menggunakan_Apache"/>
	<link rel="alternate" type="text/html" href="https://lms.onnocenter.or.id/wiki/index.php?title=Proses_deployment_aplikasi_web_menggunakan_Apache&amp;action=history"/>
	<updated>2026-04-21T10:07:50Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://lms.onnocenter.or.id/wiki/index.php?title=Proses_deployment_aplikasi_web_menggunakan_Apache&amp;diff=72473&amp;oldid=prev</id>
		<title>Unknown user at 04:46, 8 April 2025</title>
		<link rel="alternate" type="text/html" href="https://lms.onnocenter.or.id/wiki/index.php?title=Proses_deployment_aplikasi_web_menggunakan_Apache&amp;diff=72473&amp;oldid=prev"/>
		<updated>2025-04-08T04:46:32Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://lms.onnocenter.or.id/wiki/index.php?title=Proses_deployment_aplikasi_web_menggunakan_Apache&amp;amp;diff=72473&amp;amp;oldid=72338&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Unknown user</name></author>
	</entry>
	<entry>
		<id>https://lms.onnocenter.or.id/wiki/index.php?title=Proses_deployment_aplikasi_web_menggunakan_Apache&amp;diff=72338&amp;oldid=prev</id>
		<title>Unknown user: Created page with &quot;Berikut adalah **modul lengkap** untuk bagian **&quot;Proses Deployment Aplikasi Web menggunakan Apache&quot;**, sebagai bagian dari kuliah **Pengenalan Deployment Aplikasi Web** untuk...&quot;</title>
		<link rel="alternate" type="text/html" href="https://lms.onnocenter.or.id/wiki/index.php?title=Proses_deployment_aplikasi_web_menggunakan_Apache&amp;diff=72338&amp;oldid=prev"/>
		<updated>2025-04-06T02:28:06Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Berikut adalah **modul lengkap** untuk bagian **&amp;quot;Proses Deployment Aplikasi Web menggunakan Apache&amp;quot;**, sebagai bagian dari kuliah **Pengenalan Deployment Aplikasi Web** untuk...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Berikut adalah **modul lengkap** untuk bagian **&amp;quot;Proses Deployment Aplikasi Web menggunakan Apache&amp;quot;**, sebagai bagian dari kuliah **Pengenalan Deployment Aplikasi Web** untuk mata kuliah **Web Programming**. Modul ini dirancang untuk **Ubuntu 24.04** dan **tidak menggunakan tools dari Microsoft sama sekali**. Banyak contoh konkret disertakan agar mudah dipahami oleh mahasiswa.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 📘 Modul: Proses Deployment Aplikasi Web menggunakan Apache di Ubuntu 24.04&lt;br /&gt;
&lt;br /&gt;
### 🎯 Tujuan Pembelajaran&lt;br /&gt;
Setelah mengikuti modul ini, mahasiswa diharapkan mampu:&lt;br /&gt;
- Menginstall dan mengkonfigurasi Apache sebagai web server.&lt;br /&gt;
- Men-deploy aplikasi web berbasis HTML, PHP, dan Python (Flask) menggunakan Apache.&lt;br /&gt;
- Mengatur virtual host untuk lebih dari satu website.&lt;br /&gt;
- Menerapkan pengamanan dasar dan struktur produksi.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🧱 1. Instalasi dan Persiapan Awal&lt;br /&gt;
&lt;br /&gt;
### 1.1 Update Sistem&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt update &amp;amp;&amp;amp; sudo apt upgrade -y&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 1.2 Install Apache2&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt install apache2 -y&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 1.3 Uji Apache di Browser&lt;br /&gt;
Buka browser dan akses IP server:&lt;br /&gt;
```&lt;br /&gt;
http://IP_ADDRESS&lt;br /&gt;
```&lt;br /&gt;
Jika muncul halaman &amp;quot;Apache2 Ubuntu Default Page&amp;quot;, maka Apache berhasil terinstall.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🔥 2. Keamanan Dasar Server&lt;br /&gt;
&lt;br /&gt;
### 2.1 Aktifkan UFW (Firewall)&lt;br /&gt;
```bash&lt;br /&gt;
sudo ufw allow OpenSSH&lt;br /&gt;
sudo ufw allow &amp;#039;Apache Full&amp;#039;&lt;br /&gt;
sudo ufw enable&lt;br /&gt;
sudo ufw status&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🌐 3. Struktur Direktori Produksi&lt;br /&gt;
Apache menyimpan file website di:&lt;br /&gt;
```&lt;br /&gt;
/var/www/html&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Namun, untuk produksi lebih rapi digunakan:&lt;br /&gt;
```&lt;br /&gt;
/var/www/&lt;br /&gt;
    ├── web1.com/&lt;br /&gt;
    ├── web2.com/&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Contoh:&lt;br /&gt;
```bash&lt;br /&gt;
sudo mkdir -p /var/www/contohsite&lt;br /&gt;
sudo chown -R $USER:$USER /var/www/contohsite&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🧪 4. Deploy Website Statis (HTML, CSS, JS)&lt;br /&gt;
&lt;br /&gt;
### 4.1 Buat File HTML&lt;br /&gt;
```bash&lt;br /&gt;
nano /var/www/contohsite/index.html&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
```html&lt;br /&gt;
&amp;lt;!DOCTYPE html&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&amp;lt;title&amp;gt;Contoh Website&amp;lt;/title&amp;gt;&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&amp;lt;h1&amp;gt;Halo Dunia dari Apache!&amp;lt;/h1&amp;gt;&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 4.2 Buat Virtual Host untuk Website&lt;br /&gt;
```bash&lt;br /&gt;
sudo nano /etc/apache2/sites-available/contohsite.conf&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
```apache&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
    ServerAdmin admin@contohsite.local&lt;br /&gt;
    ServerName contohsite.local&lt;br /&gt;
    DocumentRoot /var/www/contohsite&lt;br /&gt;
    ErrorLog ${APACHE_LOG_DIR}/contohsite_error.log&lt;br /&gt;
    CustomLog ${APACHE_LOG_DIR}/contohsite_access.log combined&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 4.3 Aktifkan Virtual Host&lt;br /&gt;
```bash&lt;br /&gt;
sudo a2ensite contohsite.conf&lt;br /&gt;
sudo systemctl reload apache2&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Tambahkan di `/etc/hosts` lokal agar bisa diuji:&lt;br /&gt;
```&lt;br /&gt;
127.0.0.1 contohsite.local&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Akses di browser: `http://contohsite.local`&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🐘 5. Deploy Aplikasi PHP&lt;br /&gt;
&lt;br /&gt;
### 5.1 Install PHP&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt install php libapache2-mod-php -y&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 5.2 Buat File PHP&lt;br /&gt;
```bash&lt;br /&gt;
sudo nano /var/www/contohsite/index.php&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
```php&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
echo &amp;quot;Halo dari PHP!&amp;quot;;&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 5.3 Uji di browser&lt;br /&gt;
`http://contohsite.local/index.php`&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🐍 6. Deploy Aplikasi Flask (Python)&lt;br /&gt;
&lt;br /&gt;
### 6.1 Install Python dan WSGI&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt install python3 python3-pip python3-venv libapache2-mod-wsgi-py3 -y&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 6.2 Setup Project&lt;br /&gt;
```bash&lt;br /&gt;
cd /var/www&lt;br /&gt;
python3 -m venv flaskenv&lt;br /&gt;
source flaskenv/bin/activate&lt;br /&gt;
pip install flask&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 6.3 Buat Struktur Aplikasi&lt;br /&gt;
```bash&lt;br /&gt;
mkdir -p /var/www/flaskapp&lt;br /&gt;
cd /var/www/flaskapp&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
**wsgi.py**&lt;br /&gt;
```python&lt;br /&gt;
from app import app as application&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
**app.py**&lt;br /&gt;
```python&lt;br /&gt;
from flask import Flask&lt;br /&gt;
app = Flask(__name__)&lt;br /&gt;
&lt;br /&gt;
@app.route(&amp;quot;/&amp;quot;)&lt;br /&gt;
def hello():&lt;br /&gt;
    return &amp;quot;Halo Dunia dari Flask via Apache WSGI!&amp;quot;&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 6.4 Konfigurasi Apache&lt;br /&gt;
```bash&lt;br /&gt;
sudo nano /etc/apache2/sites-available/flaskapp.conf&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
```apache&lt;br /&gt;
&amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
    ServerName flaskapp.local&lt;br /&gt;
&lt;br /&gt;
    WSGIDaemonProcess flaskapp threads=5 python-home=/var/www/flaskenv&lt;br /&gt;
    WSGIScriptAlias / /var/www/flaskapp/wsgi.py&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;Directory /var/www/flaskapp&amp;gt;&lt;br /&gt;
        Require all granted&lt;br /&gt;
    &amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    ErrorLog ${APACHE_LOG_DIR}/flaskapp_error.log&lt;br /&gt;
    CustomLog ${APACHE_LOG_DIR}/flaskapp_access.log combined&lt;br /&gt;
&amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
sudo a2ensite flaskapp.conf&lt;br /&gt;
sudo systemctl reload apache2&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Tambahkan ke `/etc/hosts`:&lt;br /&gt;
```&lt;br /&gt;
127.0.0.1 flaskapp.local&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Akses di browser: `http://flaskapp.local`&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🛡️ 7. Menambahkan SSL dengan Let&amp;#039;s Encrypt&lt;br /&gt;
&lt;br /&gt;
### 7.1 Install Certbot&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt install certbot python3-certbot-apache -y&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
### 7.2 Jalankan&lt;br /&gt;
```bash&lt;br /&gt;
sudo certbot --apache&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🧠 Tips Produksi&lt;br /&gt;
&lt;br /&gt;
- Pastikan **permission** direktori `755`, file `644`.&lt;br /&gt;
- Log aplikasi dapat dicek di `/var/log/apache2/`&lt;br /&gt;
- Gunakan `.env` file untuk menyimpan konfigurasi rahasia.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 🧪 Tugas Praktikum&lt;br /&gt;
&lt;br /&gt;
1. Deploy website HTML sederhana menggunakan Apache.&lt;br /&gt;
2. Deploy aplikasi PHP dengan formulir input sederhana.&lt;br /&gt;
3. Deploy aplikasi Python Flask menggunakan WSGI dan Apache.&lt;br /&gt;
4. Tambahkan konfigurasi VirtualHost dan akses melalui domain lokal.&lt;br /&gt;
5. (Opsional) Uji deployment dengan SSL dari Let&amp;#039;s Encrypt.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
Kalau kamu mau aku bantu konversi modul ini ke **PDF / DOCX / Markdown / format kuliah lainnya**, tinggal bilang. Bisa juga dibuat per bab untuk silabus mingguan.&lt;/div&gt;</summary>
		<author><name>Unknown user</name></author>
	</entry>
</feed>