Deutsch

mod_rewrite

437  
Валидол старожил23.04.11 22:15
NEW 23.04.11 22:15 
Скрпт выдает линки типа
http://www.host.de/index.php/super.html
http://www.host.de/index.php/kontakt

Нужны
http://www.host.de/super.html
http://www.host.de/kontakt.html

.........
RewriteRule .* index.php [L] вырезает индех.php тут все в норме, но застрял на том, как ко второму линку добавить ".html"
Подскажите как?
#1 
voxel3d патриот23.04.11 22:43
voxel3d
NEW 23.04.11 22:43 
в ответ Валидол 23.04.11 22:15, Последний раз изменено 23.04.11 22:44 (voxel3d)
Попробуй:
RewriteRule ^index.php/(.+)(\.html)?$ /$1.html [L]

(навскидку, лень тестить).

Dropbox - средство синхронизации и бэкапа файлов.
#2 
Валидол старожил23.04.11 22:48
NEW 23.04.11 22:48 
в ответ voxel3d 23.04.11 22:43, Последний раз изменено 23.04.11 22:55 (Валидол)
вроде бы что-тo работает.
исключить /admin осталось
UPD Отлично. Спасибо
#3 
project33 коренной житель24.04.11 22:08
project33
NEW 24.04.11 22:08 
в ответ voxel3d 23.04.11 22:43
подскажете может, почему
RewriteBase /
RewriteRule ^(.*)$ test.php?u=$1
дает Internal Server Error? нужно чтоб все, что после имени домен.de/ передавалось скрипту
Продвижение сайтов, реклама: https://www.pro33.net
#4 
voxel3d патриот24.04.11 23:32
voxel3d
NEW 24.04.11 23:32 
в ответ project33 24.04.11 22:08
Уверен, что правило даёт ошибку? Вроде, всё в порядке с ним. Включи полное логгирование мод реврайта в конфиге хоста:
RewriteLog /var/log/apache2/logname
RewriteLogLewel 3


(9 - самый подробный, обычно третьего хватает, чтобы понять, что происходит)

Dropbox - средство синхронизации и бэкапа файлов.
#5 
project33 коренной житель25.04.11 02:12
project33
NEW 25.04.11 02:12 
в ответ voxel3d 24.04.11 23:32
да, похоже у провайдера косяки. на локальном сервере проверил - работает.
Продвижение сайтов, реклама: https://www.pro33.net
#6 
Sergo2008 местный житель25.04.11 10:32
Sergo2008
NEW 25.04.11 10:32 
в ответ project33 25.04.11 02:12
попробуй на сервере закомментировать "RewriteBase /", может поможет. Обычно у хостеров это уже по умолчанию настроено, и повторное использование в .htaccess вызывает ошибку.
У моего хостера подобная трабла, так что закомментировал RewriteBase и Options +FollowSymLinks, и не каких Internal Server Error больше.
#7 
project33 коренной житель25.04.11 12:24
project33
25.04.11 12:24 
в ответ Sergo2008 25.04.11 10:32
пробовал, не помогло. даже заменял на RewriteCond. проблема похоже в (.*) не любит провайдер точку
Продвижение сайтов, реклама: https://www.pro33.net
#8