RamziNotes
Tambah Catatan

foto nggak muncul di halaman. walaupun foto sudah ada.


Error 404 pada folder `/storage/` di server produksi (AApanel) biasanya disebabkan oleh salah satu dari dua hal ini:


### 1. Simbolik Link Belum Dibuat atau Salah


Di server AApanel, Anda harus menjalankan perintah link secara manual di dalam folder project Anda:


php artisan storage:link


*Jika muncul pesan "The [public/storage] link already exists", hapus dulu link yang lama lalu buat lagi:*


rm public/storage
php artisan storage:link


### 2. File "Conversions" Belum Tergenerate


Karena URL-nya mengandung kata `/conversions/`, ini berarti Anda menggunakan **Spatie Media Library**. Gambar aslinya mungkin ada, tapi versi kecil (*thumbnail*) nya belum dibuat oleh server.


**Penyebabnya biasanya:**


1. **Ekstensi PHP Kurang**: Media Library butuh `GD` atau `ImageMagick`.

  *  Cek di AApanel > App Store > PHP 8.2 > Setting > **Install extensions**.

  *  Pastikan `gd` dan `imagemagick` sudah terinstal (berwarna hijau).


2. **Antrian (Queue) Belum Jalan**: Jika Anda menggunakan sistem Queue, gambar tidak akan langsung diproses. Coba jalankan ini di terminal server untuk memprosesnya:


  php artisan media-library:regenerate


  *(Ketik `yes` jika ditanya ingin memproses semua)*.


### 3. Izin Folder (Permissions)

Pastikan Nginx bisa membaca folder tersebut. Jalankan ini di terminal server:


chown -R www:www storage public/storage
chmod -R 775 storage


**Cara Cek Cepat:**


Coba buka direktori ini lewat File Manager AApanel:

`storage/app/public/1/conversions/`


Apakah file `favicon-thumbnail.webp` ada di sana?


-  **Jika ADA tapi 404**: Masalahnya di Simbolik Link (Langkah 1).

-  **Jika TIDAK ADA**: Masalahnya di Pembuatan Gambar (Langkah 2).


Silakan cek folder tersebut dulu, apakah filenya memang sudah ada secara fisik?

gambar storage permission link
12 Apr 2026 07:50

step #11

ketika saya deploy ke server, saya dapat pesan error pada console:

GET https://bootstrap.sebatam.com/livewire/livewire.js?id=646f9d24 net::ERR_ABORTED 404 (Not Found)


solusi: jalankan perintah:


   php artisan config:clear

   php artisan cache:clear

   php artisan route:clear

   php artisan view:clear


jika masih error, jalan perintah:



jika livewire belum jalan di server, maka lakukan perintah berikut:

php artisan livewire:publish --assets

livewire publish assets
12 Apr 2026 07:48

Karena Laravel juga menulis session ke database, maka folder `database/` dan file `database.sqlite` harus writable oleh user `www` di aaPanel.


Jalankan ini di server:


cd /www/wwwroot/notes.sebatam.com/mynotes

chown www:www database/database.sqlite
chmod 664 database/database.sqlite

chown www:www database
chmod 775 database

chown -R www:www storage bootstrap/cache
chmod -R 775 storage bootstrap/cache


Kalau masih error, set lebih aman seluruh folder `database` ke `www`:


chown -R www:www /www/wwwroot/notes.sebatam.com/mynotes/database
chmod -R 775 /www/wwwroot/notes.sebatam.com/mynotes/database


Lalu bersihkan cache Laravel:


php artisan optimize:clear


Cek juga file SQLite memang ada:


ls -l /www/wwwroot/notes.sebatam.com/mynotes/database/database.sqlite


Kalau file belum ada, buat:


touch /www/wwwroot/notes.sebatam.com/mynotes/database/database.sqlite
chown www:www /www/wwwroot/notes.sebatam.com/mynotes/database/database.sqlite
chmod 664 /www/wwwroot/notes.sebatam.com/mynotes/database/database.sqlite


Intinya untuk error ini, minimal yang harus writable oleh `www`:

- `database/database.sqlite`

- folder `database`

- `storage`

- `bootstrap/cache`


note: permission untuk file dan folder setelah clone atau pull dari github

laravel deploy vps github
12 Apr 2026 06:57