Also, ich habe eine voll funktionsfähige Laravel 5-Anwendung entwickelt und es auf dem Server meines Kunden, mit Apache2, PHP5 und MySQL. Die App funktioniert wie erwartet und URLs werden korrekt neu geschrieben. Ich muss jetzt einfach meine App auf einen anderen Server klonen, der genau den gleichen Stack ausführt. Problem ist, dass ich meine App in einen Unterordner legen muss, damit auf sie über URLs zugegriffen werden kann, die dem Muster domain2.com/movedApp
entsprechen.Move Laravel 5 Anwendung im Server-Unterordner
Mit anderen Worten: Erster Server antwortet auf:
domain1.com/my/routes
zweiter Server reagieren muss:
domain2/movedApp/my/routes
ich genau das Virtualhost zu reproduzieren versucht, die auf dem ersten Server arbeitet, Hinzufügen von /movedApp
wo erforderlich und Hinzufügen von RewriteBase
zu der .htaccess
Datei im neuen Ordner public
, aber ohne Erfolg.
Ich habe bemerkt, dass Routen von URLs korrekt befolgt wie:
domain2.com/movedApp/public/index.php/my/routes
Noch bekomme ich 404-Fehler auf Vermögenswerte in log Apache2.
Hiermit melde ich meine .htaccess
Datei im Ordner public
meiner Arbeit Laravel Anwendung.
.htaccess
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine on
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule^/index.php [L]
</IfModule>
berichte ich auch die Konfigurationsdatei vom Web-Server verwendet, um meine app
default.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/galmaster/public
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/galmaster/public>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Haben Sie Erfolg? – urfusion
Ja, habe ich tatsächlich. Ich werde die Details veröffentlichen, sobald ich etwas Freizeit habe. Ich habe das Problem mit nur zwei '.htaccess' Dateien gelöst. – ibanjo
Ich habe eine Antwort auf meine eigene Frage gepostet, damit Sie sie überprüfen können. Vielleicht funktioniert meine Lösung auch für dich. – ibanjo