Папка .htaccess rewriterule и файлы перезаписывают

0

У меня проблема с моим правилом перезаписи. У меня есть новая веб-страница в root/hrp. и если я открываю страницы в этом каталоге, тогда все в порядке, но когда я хочу просматривать эти страницы из корня (без /hrp/), тогда это проблема. Я нашел некоторые правила.htaccess и все работает нормально, но если я хочу выполнить скрипт pdf, jpg или php напрямую, тогда придет проблема.

Options +FollowSymLinks  -MultiViews
RewriteEngine On

RewriteCond %{REQUEST_URI} !hrp/
RewriteRule (.*) /hrp/$1  [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/hrp/index.php

RewriteRule ^(.*)$ /index.php [L]

если я поставил этот нижний код на начало, я могу открыть файлы directli, но страницы не работают, и наоборот

RewriteCond %{REQUEST_FILENAME} (/|\.php|\.html|\.htm|\.png|\.jpg|\.jpeg|\.gif|\.xml|\.rss|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule ^(.+)$ $1 [L]
Теги:
.htaccess
mod-rewrite
url-rewriting

2 ответа

0

Я нашел решение

не переписывайте эти файлы

RewriteCond% {REQUEST_URI}!. (Gif | jpg | png | ico | css | js | swf | wav | mp3 | less | cur | pdf | jpeg | txt | ico | zip | gz) [NC]

не переписывайте эту папку - там у меня есть php файлы и не переписывайте эти файлы

RewriteCond% {REQUEST_URI}! (Folder1 | folder2 | file1.php | file2.php | file3.php) [NC]

все содержимое находится в папке "/hrp/"

RewriteCond% {REQUEST_URI}! Hrp/

RewriteRule (. *)/Hrp/$ 1 [L]

но url не содержит "/hrp/"

RewriteCond% {REQUEST_FILENAME}! -f

RewriteCond% {REQUEST_FILENAME}! -d

RewriteCond% {REQUEST_URI}! ^/Hrp/index.php

RewriteRule (. *)/Index.php [L]

0

Попробуйте добавить это сверху:

RewriteRule \.(php|html?|png|jpe?g|gif|xml|rss|feed|pdf|raw)$ - [L,NC]

или вы можете попробовать добавить это условие к своему правилу hrp:

RewriteCond %{DOCUMENT_ROOT}/hrp/$1 -f [OR]
RewriteCond %{DOCUMENT_ROOT}/hrp/$1 -d
RewriteRule (.*) /hrp/$1  [L]
  • 0
    та же проблема, если я ставлю в начале или снизу, и если я ставлю другой код, проблема в том, что я должен изменить много файлов, потому что включение в hrp не работает ....
  • 0
    лучшая идея, как исключить расширения из переписывания?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню