Ini pertanyaan terkait pemasangan Laravel. Saya memiliki pengaturan server Unix yang bersifat publik:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/mydomain"
ServerName mydomain.org
ServerAlias www.mydomain.org
ErrorLog "/var/log/mydomain.org-error_log"
CustomLog "/var/log/mydomain.org-access_log" common
</VirtualHost>
Saya dapat menyajikan dokumen dengan baik di luar / var / www / mydomain yaitu http://mydomain.org/test.php dengan test.php berisi:
<?php echo 'test';
bekerja dengan baik.
Di bash, dengan Laravel diinstal melalui Composer dan melihat file:
# ls /var/www/mydomain/my-laravel-project
.gitattributes CONTRIBUTING.md artisan composer.json phpunit.xml readme.md vendor
.gitignore app bootstrap composer.lock public server.php
Jadi ketika saya menjelajah ke:
http://mydomain.org/my-laravel-project/public/
mengapa aplikasi saya melaporkan:
Error in exception handler.
di browser - di layar putih kosong? Saya mengharapkan untuk melihat layar splash Laravel.
Selain itu, file log juga tidak mengungkapkan apa pun.
/var/log
dan melihat apa, jika ada, yang mereka katakan.app/storage/logs
? Dan apakah semua direktori penyimpanan dapat ditulisi?Jawaban:
Opsi yang lebih aman adalah mengubah grup direktori penyimpanan ke grup server web Anda (biasanya
apache
atauwww-data
, tetapi ini dapat berbeda-beda di antara sistem operasi yang berbeda) dan mempertahankan izin pada direktori sebagai775
.Atau dengan
chown
.Kemudian pastikan izin direktori
775
.Dari situs web Laravel :
sumber
sudo chown -R _www app/storage
(ganti _www dengan nama server Apache Anda jika perlu)chmod -R g+w app/storage
Laravel 5.2.0
chmod -R 777 penyimpanan
Aplikasi / penyimpanan / * Laravel chmod 777 yang lebih lama
Perhatikan jika Anda memiliki dedicated server yang cukup terkunci tanpa akun pengguna selain milik Anda, 777 seharusnya tidak menimbulkan risiko keamanan lebih dari apa pun. Harus ada beberapa kerentanan lain bagi pengguna jahat untuk memanfaatkannya, dan pada saat itu, izin 777 mungkin masih diperdebatkan. Namun, jika Anda berada di server bersama dengan pengguna lain yang tidak Anda percayai, Anda harus melihat izin yang lebih rumit atau memeriksa apakah penyedia hosting Anda telah menyediakan isolasi.
Mereka harus benar-benar meletakkan ini di dokumen mulai cepat dan memberikan contoh untuk berbagai pengaturan. Anda mungkin juga harus menjalankannya lagi setelah pemuatan pertama karena lebih banyak direktori dibuat secara otomatis. Cari di log Anda untuk kesalahan tulis.
DocumentRoot Anda juga harus / path / to / laravel-project / public
sumber
Saya menghapus sesi lama di dalam
app/storage/sessions
folder dan memberikan775
izinapp/storage
setelah itu berfungsi seperti api!Semoga berhasil!
sumber
Kereta musik telah meneruskan ini sejak lama, tetapi saya masih memiliki nasihat lain tentang "Kesalahan dalam penangan pengecualian."
Saya mengalami hal ini ketika menjalankan "php artisan", yang merupakan cara yang baik untuk menilai apakah lingkungan Anda berfungsi secara umum.
Saya menjalankannya dan itu memberi saya kesalahan itu, dan saya tidak bisa menunjukkan masalahnya sampai saya mengedit file artisan di direktori root proyek saya dan menambahkan pernyataan coba tangkap:
Pada titik mana saya akhirnya melihat pesan yang mencerahkan:
yang dalam kasus saya adalah konfigurasi redis yang buruk, tetapi dalam kasus Anda dapat berupa apa saja.
Saya harap ini membantu seseorang, atau setidaknya lain kali saya sampai di sini, saya akan menemukan jawaban saya sendiri.
sumber
could not find driver
. Dan kemudian saya menemukan saya telah menginstalphp-mysql
, sementaraphp7.0-mysql
diperlukan. Tautan ini juga membantu saya - digitalocean.com/community/tutorials/…Cara terpendek untuk mengatasinya adalah memulai tukang dengan sudo. Ini akan memberi pengrajin semua izin yang dibutuhkan dan tidak akan membuat masalah keamanan juga.
jadi alih-alih memulai pengrajin melayani dengan:
coba gunakan:
jadi Anda tidak perlu melakukan perubahan izin apa pun
sumber
Saya memiliki masalah yang sama, saya hanya mengubah izin dari aplikasi / penyimpanan direktori ke 775 dengan baris perintah chmod
sumber