htaccess предотвратить удаление расширений файлов для шаблона URL - PullRequest
0 голосов
/ 08 октября 2018

У меня есть настройка перезаписи шаблона, которая выполняет перезапись на основе переданного URL.

# Remove declared file extensions  
RewriteCond %{REQUEST_METHOD} !(^POST$)
RewriteCond %{THE_REQUEST} \ /+([^\?\ ]+)\.(html|htm|php|asp|aspx)
RewriteRule ^ /%1 [r=301,l]

# rewrite requests for results entry template
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^results/(.*)$ /tpl/results.php?url=$1 [L,QSA]

Вывод аналогичен поведению на https://website.grader.com URL результатов https://website.grader.com/results/ добавляется с полным предоставленным URL.

пример: https://website.grader.com/results/https://example-site.com/example-directory/index.html

Я обнаружил, что существующее правило, которое удаляет расширения файлов, вызывает конфликт с выходными данными перезаписи шаблона, еслипредставленный URL содержит расширение файла.

Таким образом, http://test-site.com/results/http://crawled-site/dir/file.html становится http://test-site.com/results/http://crawled-site/dir/file

Могу ли я вставить дополнительное условие перезаписи, чтобы предотвратить удаление расширений, где они могут существовать для пути перенаправления шаблона?

...