Heim  >  Fragen und Antworten  >  Hauptteil

Titel umgeschrieben in: Das Laden von Bildern wird blockiert, wenn der Bildname Bindestriche enthält, zu lang ist oder von seiner Position abhängt

Ich habe einige Bilder, die ich unter meine Website gestellt habe C:xampphtdocscatshopassetsimg 文件夹中。如果一个图片的名字像 food-adult-wet-meo-sardine-in-prawn-jelly-400g,它不会在网站上显示。然而,如果名字像 can1.png 或者 can-1.png,它会正确显示(尽管它们在同一个位置)。如果我把它命名为 food-prawnjelly.png,即使只有一个连字符,它也不会显示。 foodprawnjelly.png und sie funktionieren auch nicht.

Wenn ich das Bild auf C:xampphtdocscatshopassetsimgfood,它也不会显示,即使它的名字之前是可以“工作”的,比如 can1.png verschiebe.

Ich weiß nicht, ob das damit zusammenhängt oder ob es das Problem verursacht, aber ich verwende Rewrite-Regeln, um schöne Links zu erstellen. Ein Link wie catshop/food/adult-cat.food 会被重写为 show-category.php,在那里进行适当的过滤以显示来自 adult-cat-food 的产品。我已经为图片路径使用了绝对链接(例如 /catshop/assets/img/can-1.png)

Verwendete Umschreiberegeln: RewriteRule ^(w+)/(w+)$ show-category.php [NE,L]

Wenn Sie weitere Informationen benötigen, lassen Sie es mich bitte wissen, vielen Dank!

catshop
├─ .htaccess
├─ assets
│  ├─ bootstrap
│  ├─ css
│  ├─ fonts
│  ├─ img
│  │  ├─ can-1.png
│  └─ js
├─ index.php
├─ login.php
├─ register.php
├─ show-category.php
└─ logout.php

Bearbeiten: Inhalt der .htaccess-Datei

<IfModule mod_rewrite.c>

    Options +FollowSymLinks
    RewriteEngine On    # 打开重写引擎
    RewriteRule    home   index.php    [NC,L]    
    RewriteRule    food   show-category.php    [NC,L]    

    RewriteRule   ^((\w+)\/)+(\w.+)$  show-category.php    [NE,L]    

</IfModule>

P粉794851975P粉794851975277 Tage vor357

Antworte allen(1)Ich werde antworten

  • P粉604669414

    P粉6046694142024-01-17 09:49:34

    根据我的理解,

    1. 您希望直接从/catshop/assets位置解析图像等
    2. 任何.php文件必须解析
    3. 任何其他不包含单词“home”的URL必须解析为/catshop/show-category.php

    (请注意:您可能希望更改对home的使用,因为这将匹配任何包含home单词的字符串)

    <IfModule mod_rewrite.c>
    
        Options +FollowSymLinks
        RewriteEngine On    # 打开重写引擎
        RewriteRule    home   index.php    [NC,L]    
        RewriteRule   ^((?!assets)\w+\/)+(\w+\.\w+)(?<!\.php)$  catshop/show-category.php    [NE,L]    
    
    </IfModule>

    这将查找不包含单词assets.php的任何URL部分

    Antwort
    0
  • StornierenAntwort