iseknder
Merhaba, laravel'in dosya yapısını bozmadan paylaşımlı hosting'de çalıştırmanın yollarından biri public klasörüne symlink vermektir. ilk önce sunucunuzun aşağıdaki dökümantasyondaki maddeleri sağladığından emin olmalısınız.
https://laravel.com/docs/7.x#server-requirements
Aşağıdaki maddeleri uygulayarak paylaşımlı hosting'lerde laravel projelerimi böyle çalıştırıyorum. Sizin sunucunuzda bu yöntem geçerli olmayabilir bazı özellikleri kapalı olabilir.
bunu öğrenebilmek için public_html altına bir php dosyası atıp içine
<?php
echo phpinfo();
?>
yazıp çalıştırın. Eğer gereklilikleri karşılıyorsanız bir sonraki adımda symlink oluşturacağız.
cPanel kullandığınız varsayarak.
1-) çalışan laravel projenizi ilk önce root klasörü altında bir klasöre atınız.
örnek : /home/examplecom/webfiles olsun
edit 1 : burada examplecom örnek olsun diye sizin kullanıcı adınız burada ne ise onu yazmalısınız.
2-) public_html silin
3-) cPanel içinde Cronjobs kısmı var ordaki kısımda her 1 dakika'da çalışacak şekilde aşağıdaki kodu kendi sunucunuza göre yazın burada 1 dakika içinde public_html yeniden oluşacak ve sizin webfiles altında bulunan public klasörünü gösterecek.
ln -s /home/examplecom/webfiles/public /home/examplecom/public_html
4-) Cronjobs'ı silin paylaşımlı sunucularda sunucu sahibi firma sıkıntı çıkartır.
Sonuç = artık web sayfanız çağrıldığında public_html sizin projenizdeki public klasörünü gösterecek laravel'in dosya yapısı bozulmadan çalışacaktır.
Umarım anlatabilmişimdir bu konuda iyi değilim eksiklerim varsa kusuruma bakmayınız.
Saygılar.