Ich habe One-Domain-Konfiguration bei meinem yii2 app-advanced-Projekt. Bevor die Konfiguration funktioniert, kann ich den Link zu keiner Bilddatei verwalten. Als ich versuchte, Datei von http://{domain}/icons/logo.svg
Link heruntergeladen werden, habe ich Fehler 404:404 Nicht gefunden für Datei-Link bei Yii2 App-Advanced mit One-Domain-Konfiguration
Not Found
The requested URL /icons/logo.svg was not found on this server.
Aber http://{domain}/frontend/web/icons/logo.svg
funktioniert. Datei existiert im angezeigten Ordner. Wie man Apache-Konfigurationsdateien am Projekt korrigiert, um kurze Links zu verwenden.
hier meine config:
Apache:
<VirtualHost *:80> ServerName test.dev ServerAdmin [email protected] DocumentRoot /home/user/Projects/test-app/ <Directory /home/user/Projects/test-app/> Require all granted AllowOverride All </Directory> </VirtualHost>
Basis
.htacces
:Options -Indexes IndexIgnore */* Options +SymLinksIfOwnerMatch <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.(.*)$ RewriteRule ^(.*)$ http://%1/$1 [L,R=301] RewriteRule ^admin(.{2,})?(/)?$ /backend/web/$1 [L,PT] RewriteRule ^([^/].*)?$ /frontend/web/$1 </IfModule>
Frontend
.htacces
:Options -Indexes <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php </IfModule> DirectoryIndex index.php
- auch in der Konfigurationsdatei aktiviert
frontend\config\main.php
:
- auch in der Konfigurationsdatei aktiviert
'components' => [
'request' => [
'csrfParam' => '_csrf-frontend',
'baseUrl' => '',
],
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'' => 'site/index',
'sitemap' => 'sitemap/index',
],
],
Sardor Dushamov, Ihre Variante funktioniert auch nicht. Neben, auf Frage beschrieben Konfiguration funktioniert gut in anderen yii2 Projekte auf meinem PC. Vielleicht ist ein Fehler allgemeiner? – Oleg