URL'yi herkese açık olarak kaldırmanın 4 en iyi yolu.
URL'yi genel URL'den kaldırmak için başka bir numara kullandıysanız, server.php adını index.php olarak değiştirir ve çekirdek dosya yoluna geçer. Açıkçası bunu yapma. Öyleyse Laravel neden çözümü böyle vermiyor çünkü bunu yapmak için uygun bir yol değil.
1) Laravel'de htaccess kullanarak herkesi URL'den kaldırın
Köke bir .htaccess dosyası ekleyerek, web sitesine herkese açık olmadan erişebilirsiniz
<ifmodule mod_rewrite.c>
<ifmodule mod_negotiation.c>
Options -MultiViews
</ifmodule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]
RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php
</ifmodule>
2) Yerelinizde sanal bir ana bilgisayar oluşturarak halkı kaldırın
Burada Windows işletim sistemi için demo veriyorum. Ama herkesin adımı kolayca takip edebilmesi için bir adım tanımlamaya çalışacağım. Ayrıca, belirli bir işletim sistemi için aynı şeyi Google'da da araştırabilirsiniz.
Adım 1: C: \ Windows \ system32 \ drivers \ etc \ dizinine gidin ve "hosts" dosyasını Yönetici modunda açın.
Adım 2: Aşağıdaki kodu ekleyin. Burada size projectname.local alan adı demosunun bir demosunu veriyorum, istediğiniz gibi belirtebilirsiniz. Sadece her yerde sabit yap.
127.0.0.1 projectname.local
Adım 3: Şimdi C:\xampp\apache\conf\extra
xampp kullanıcıları ve wamp kullanıcısı için gidin "C:\wamp\bin\apache\Apache2.4.4\conf\extra"
ve "httpd-vhosts.conf"
dosyayı açın . Şimdi içine aşağıdaki kodu ekleyin.
Notlar: "Kökler" dosyasında tanımladığınız şekilde, alan adınızı projenize göre değiştirin.
<VirtualHost projectname.local>
ServerAdmin projectname.local
DocumentRoot "C:/xampp/htdocs/projectdir"
ServerName projectname.local
ErrorLog "logs/projectname.local.log"
CustomLog "logs/projectname.local.log" common
</VirtualHost>
Adım 4: Son fakat önemli adım Xampp veya Wamp'inizi yeniden başlatmak ve URL'ye erişmek gibi http://projectname.local
. Laravel'iniz genel URL olmadan yanıt verecektir.
3) Laravel'de komutu çalıştırarak halkı kaldırın
Yerel olarak çalışıyorsanız, hiçbir şey yapmanız gerekmez, sadece terminalinizden veya komut satırı aracınızdan aşağıdaki komutu çalıştırmanız gerekir. Bundan sonra, komut satırından sağlanan URL ile web sitenize erişebilirsiniz.
> php artisan serve
Projenizi belirli bir IP üzerinde çalıştırmak istiyorsanız, aşağıdaki komutu çalıştırmanız gerekir. LAN üzerinde çalışıyorsanız, diğer kişilerin web sitenize yerelden erişmesine izin vermek istiyorsanız, IP adresinizi komutun ardından çalıştırdıktan sonra "ipconfig" komutunu kullanarak IP adresinizi komut satırını kullanarak kontrol etmeniz yeterlidir.
> php artisan serve --host=192.168.0.177
Projenizi belirli bir port ile belirli bir IP üzerinde çalıştırmak istiyorsanız, aşağıdaki komuta ihtiyacınız vardır.
> php artisan serve --host=192.168.0.177 --port=77
4) Barındırılan sunucudaki veya cpanel'deki genel durumu kaldırın
Projeyi tamamladıktan sonra, projeyi sunucuda barındırmanız gerekir, o zaman alan adınızdaki belge kökünü ortak klasöre ayarlamanız gerekir. Aşağıdaki ekran görüntüsünü kontrol edin.
Ekran görüntüsüne göre public_html içinde herhangi bir proje klasörünüz yoksa, doküman kökünüzü ayarlamanız yeterlidir "public_html/public"
.
Buradan alınan referans