4 beste Möglichkeiten, um public von der URL zu entfernen.
Wenn Sie einen anderen Trick verwendet haben, um die Öffentlichkeit von der URL zu entfernen, ändern Sie beispielsweise den Namen von server.php in index.php und wechseln Sie in den Kerndateipfad. Mach das natürlich nicht. Warum gibt Laravel dann nicht die Lösung wie diese, weil es kein richtiger Weg ist, dies zu tun?
1) Entfernen Sie public mit htaccess in Laravel von der URL
Durch Hinzufügen einer .htaccess-Datei zum Stammverzeichnis können Sie ohne Veröffentlichung auf die Website zugreifen
<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) Entfernen Sie die Öffentlichkeit, indem Sie einen virtuellen Host in Ihrem lokalen erstellen
Ich gebe hier eine Demo für das Windows-Betriebssystem. Aber ich werde versuchen, einen Schritt zu definieren, damit jeder dem Schritt leicht folgen kann. Sie können auch auf Google nach dem gleichen für das jeweilige Betriebssystem suchen.
Schritt 1: Gehen Sie zu C: \ Windows \ system32 \ drivers \ etc \ und öffnen Sie die Datei "hosts" im Administratormodus.
Schritt 2: Fügen Sie den folgenden Code hinzu. Hier gebe ich Ihnen eine Demo von projectname.local Domain Name Demo, die Sie beliebig angeben können. Machen Sie es einfach an jedem Ort konstant.
127.0.0.1 projectname.local
Schritt 3: Gehen Sie nun zu, C:\xampp\apache\conf\extra
für xampp-Benutzer und für den wamp-Benutzer "C:\wamp\bin\apache\Apache2.4.4\conf\extra"
und öffnen Sie die "httpd-vhosts.conf"
Datei. Fügen Sie nun den folgenden Code hinzu.
Anmerkungen: Ändern Sie den Dokumentstamm gemäß Ihrem Projekt. Fügen Sie außerdem den von Ihnen definierten Domänennamen in die Datei "Hosts" ein.
<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>
Schritt 4: Der vorletzte wichtige Schritt besteht darin, Xampp oder Wamp neu zu starten und auf die URL zuzugreifen http://projectname.local
Ihr Laravel antwortet ohne öffentliche URL.
3) Entfernen Sie die Öffentlichkeit, indem Sie den Befehl in Laravel ausführen
Wenn Sie lokal arbeiten, müssen Sie nichts tun, sondern nur den folgenden Befehl von Ihrem Terminal oder Befehlszeilentool aus ausführen. Danach können Sie über die über die Befehlszeile angegebene URL auf Ihre Website zugreifen.
> php artisan serve
Wenn Sie bereit sind, Ihr Projekt unter einer bestimmten IP-Adresse auszuführen, müssen Sie den folgenden Befehl ausführen. Wenn Sie im LAN arbeiten und anderen Personen den Zugriff auf Ihre Website von lokal aus ermöglichen möchten, müssen Sie nur Ihre IP-Adresse mithilfe der Befehlszeile überprüfen, indem Sie "ipconfig" ausführen, nachdem Sie Ihre IP-Adresse gemäß dem Befehl ausgeführt haben.
> php artisan serve --host=192.168.0.177
Wenn Sie bereit sind, Ihr Projekt auf einer bestimmten IP mit einem bestimmten Port auszuführen, müssen Sie den folgenden Befehl ausführen.
> php artisan serve --host=192.168.0.177 --port=77
4) Entfernen Sie die Öffentlichkeit auf dem gehosteten Server oder auf dem cpanel
Nach Abschluss des Projekts müssen Sie das Projekt auf dem Server hosten und dann nur den Dokumentenstamm in Ihrer Domäne auf den öffentlichen Ordner setzen. Überprüfen Sie den folgenden Screenshot.
Wenn Sie laut Screenshot keinen Projektordner in public_html haben, müssen Sie nur Ihren Dokumentstamm wie folgt festlegen "public_html/public"
.
Referenz von hier genommen