2015-02-19 2 views
2

Я пробовал искать alot для решения для этого, но я просто не могу его найти.Htaccess simple extension redirect

У меня есть websever работает Apache ж/PHP (mod_rewrite включен), и я хочу, чтобы просто сделать следующее:

Запрос от

downloadedReports/testreport.pdf 

Запрос

downloadedReports/testreport.php 

Я в настоящее время пробовал следующий перезаписываемый код:

<IfModule mod_rewrite.c> 
    Options +FollowSymLinks 
    Options +Indexes 
    RewriteEngine On 
    RewriteRule .pdf $1.php [NC,L] 
</IfModule> 

Но это совсем не работает.

Примечание: Я не хочу перенаправить URL-адрес/отправить цель на другую страницу. Я просто хочу переписать запрос.

ответ

0

После нескольких попыток поиска и поиска/сбоев я нашел решение проблемы. Работает по назначению прямо сейчас!

Options +FollowSymLinks 
RewriteEngine On 
RewriteRule ^([^.]+).pdf$ $1.php [QSA,L] 
0

Посмотрите на эту статью, она объясняет, как удалить их:

http://alexcican.com/post/how-to-remove-php-html-htm-extensions-with-htaccess/

Удаление расширений Чтобы удалить расширение .php из PHP-файл для примера yoursite.com/wallpaper .php к yoursite.com/wallpaper вы должны добавить следующий код в файл .htaccess:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 

Или наши цели вы можете изменить:

Options +FollowSymLinks 
Options +Indexes 
<IfModule mod_rewrite.c> 
    RewriteEngine On 
    ## Block acess to dirs 
    RewriteCond %{REQUEST_FILENAME} !-d 
    ## Block acess to files 
    RewriteCond %{REQUEST_FILENAME} !-f 
    ## Block acess for links 
    RewriteCond %{REQUEST_FILENAME} !-l 
    ## don't do anything 
    RewriteRule^- [L] 

    RewriteRule ^([^\.]+)\.(pdf)$ $1.php [QSA,L] 
</IfModule>