<filesmatch> только для одной страницы
Мне нужно, чтобы только на домашней странице имелось следующее сопоставление файлов, в котором нужно открывать файлы.pdf перед открытием, а другие файлы.pdf на сайте (не на главной странице) я хочу открыть автоматически. Это лучший способ сделать это?
Это сайт Wordpress, последняя версия, а домашняя страница представляет собой заданную страницу. Кроме того, владелец сайта может добавить больше ссылок в формате PDF на сайт, поэтому я не хочу слишком усложнять его, когда ей приходится манипулировать кодом каждый раз, когда она добавляет файл.
Вот что сейчас находится в моем файле.htaccess:
# Use PHP5 as default
AddHandler application/x-httpd-php5 .php
ErrorDocument 404 /index.php
ErrorDocument 403 /index.php
#BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.dramanotebook.com/$1 [R,L]
<Files 403.shtml>
order allow,deny
allow from all
</Files>
<FilesMatch "\.pdf$">
ForceType applicaton/octet-stream
Header set Content-Disposition attachment
</FilesMatch>
# END WordPress
Заранее спасибо джим
1 ответ
Я смог сделать это с помощью <Files></Files>
,
пример:
<Files "filenameexample.pdf">
ForceType applicaton/octet-stream
Header set Content-Disposition attachment
</Files>
Хитрость в том, что вам нужно добавить <files></files>
для каждого файла вы хотите индивидуально контролировать. Нет возможности сказать "все PDF на этой странице защищены, но другие страницы делают что-то еще". На самом деле, вы могли бы... но вам нужно было бы поместить файл.htaccess в каждую папку, чтобы "вернуть" его обратно для этих расширений другим способом. Псих. Быстрее просто сделать 3 файла, которые мне нужны были конкретно.
Я не нашел ни полезной информации в Интернете, ни каких-либо ответов. Я просто много тестировал.
Джим