Bu proje, her kullanıcının kendi profillerine PDF dosyalarını etkili bir şekilde yönetmek için tasarlanmış bir Laravel uygulamasıdır. PDF dosyalarını yüklemek, görüntülemek ve yönetmek için kontrolcüler ve yönlendirmeler içerir. Her kullanıcı sadece kendi pdf dosyaları üzerinde işlem yapabilir dışarıdan başkası erişim sağlayamaz.
-
Depoyu Klonlayın
git clone https://github.com/malisahin89/laravel-pdf-secure.git cd laravel-pdf-secure
-
Bağımlılıkları Yükleyin
composer install npm install && npm run dev
-
Ortam Ayarları
.env.example
dosyasını.env
olarak kopyalayın:cp .env.example .env
- Veritabanınızı ve diğer ortam değişkenlerini
.env
dosyasında yapılandırın.
-
Uygulama Anahtarını Oluşturun
php artisan key:generate
-
Veritabanı
php artisan migrate
- PDF dosyalarını yüklemek için bir yönlendirme ayarlanmıştır.
- Bir PDF yüklemek için uygulamada sağlanan formu kullanabilir veya
/pdf/upload
adresine bir POST isteği gönderebilirsiniz.
- Uygulama, PDF dosyalarını tarayıcıda görüntüleme işlevine sahiptir.
- Belirli bir PDF dosyasını görüntülemek için
/pdf/view/{id}
uç noktasını kullanabilirsiniz.
web.php
dosyasında aşağıdaki yönlendirmeler yapılandırılmıştır:
GET /pdf/view/{id}
: PDF dosyasını tarayıcıda görüntüler.POST /pdf/upload
: PDF dosyalarının yüklenmesini sağlar.
- PDFViewController: Bu kontrolcü, PDF dosyalarını görüntüleme işlemini yönetir.
- view(): PDF dosyasını alır ve tarayıcıda yayınlar.
- PdfFile: Bu model, veritabanında saklanan PDF dosyalarını temsil eder ve dosya yolu ile adı gibi meta verileri içerir.
- PHP >= 8.0
- Composer
- Laravel >= 9
- Node.js ve npm
- Bir veritabanı (örn. MySQL, SQLite)
Uygulamayı yerel olarak çalıştırmak için:
php artisan serve
Uygulama http://127.0.0.1:8000
adresinde erişilebilir olacaktır.
.env
dosyasının veritabanınız ve diğer servisler için doğru yapılandırıldığından emin olun.- Yüklenen dosyalar erişilebilir değilse
php artisan storage:link
komutunu çalıştırın.