У меня проблема с правилом перезаписи мод в области НЕ РАБОТАЮЩАЯ :) У меня есть сайт проекта, который является просто сайтом возврата ajax. Мне нравится открывать свой сайт на sitename.com/my-test/project/test.html и переписывать файл sitename.com/my-test/project.html?index=test. Я знаю, что после моего переписывания правила перезаписи cms должны проходить его работу. Я не уверен, возможно, это проблема, и они пересекаются или разбиваются.apache mod_rewrite - переписать правило
Если я просматриваю URL-адреса через браузер, все будет работать нормально, только правило перезаписи не будет работать, и я становлюсь сумасшедшим и не могу найти проблему.
Так что я надеюсь, что кто-то может мне помочь.
REWRITE CONFIG в .htaccess
RewriteEngine On
RewriteBase/
#### WOULD NOT WORK ######
# REWRITE AJAX PROJEKT
RewriteCond %{REQUEST_URI}% ^my-test/projects/[a-zA-Z0-9]+\.html$ [NC]
RewriteRule ^my-test/projects/[a-zA-Z0-9]+\.html my-test/projects.html?index=$1
### WORK CORRECTLY ####
# REWRITE RULE FOR SEO FRIENDLY IMAGE MANAGER URLS
RewriteRule ^files[0-9]*/imagetypes/([^/]*)/([^/]*) index.php?rex_img_type=$1&rex_img_file=$2
# DON'T REWRITE IF REAL FILE, FOLDER OR SYMLINK EXISTS
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
# EXCLUDE SPECIFIC FOLDERS FROM REWRITE ENGINE
RewriteCond %{REQUEST_URI} !/files[0-9]*/
RewriteCond %{REQUEST_URI} !/assets/.*
RewriteCond %{REQUEST_URI} !/media/.*
RewriteCond %{REQUEST_URI} !/redaxo/.*
# REWRITE ALL OTHER REQUESTS TO INDEX.PHP
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [L]
и я также протестировали
RewriteCond %{REQUEST_URI}% ^/my-test/projects/[a-zA-Z0-9]+\.html$ [NC]
RewriteRule ^/my-test/projects/[a-zA-Z0-9]+\.html my-test/projects.html?index=$1
#OR JUST
RewriteRule ^/my-test/projects/[a-zA-Z0-9]+\.html$ my-test/projects.html?index=$1
#OR
RewriteRule ^/my-test/projects/(.*)$ my-test/projects.html?index=$1
#AND CORRECT
RewriteCond %{REQUEST_URI} ^/my-test/projects/[a-zA-Z0-9]+\.html$ [NC]
RewriteRule ^/my-test/projects/[a-zA-Z0-9]+\.html my-test/projects.html?index=$1
#AND ---
RewriteRule ^my-test/projects/([a-zA-Z0-9]+)\.html my-test/projects.html?index=$1 [L]
Я не нашел ответ, поэтому я действительно надеюсь, что кто-то может помочь мне
Спасибо всем
ng moxx
Hi, thx для быстрого воспроизведения. исправить не будет работать :( – moxx
@ user1807046 См. правило в конце ответа еще раз, вам не хватало группы захвата (круглые скобки) –
thx также не работает: (((работает только RedirectMatch, это не оптимизация SEO - > RedirectMatch ^/my-test/projects/([a-zA-Z0-9] +) \. Html http://sitename.com/my-test/projects.html?index=$1 – moxx