2012-05-17 2 views
1

iam с использованием mod-rewrite для создания читаемых пользователем URL-адресов. (POST: Mod rewrite - make link readable)Сессия с mod_rewrite

Теперь у меня есть проблема. Я использую сеансы. как я могу переслать идентификатор сессии?

Мой .htaccess

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^example\.de$ [NC] 
RewriteRule ^(.*)$ http://www.example.de$1 [R=301] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]*)/([^/]*)/([^/]*)\.html$ /?lang=$1&subid=$2&id=$3 [L] 

Моя идея состояла в том, чтобы изменить его таким образом:

RewriteRule ^([^/]*)/([^/]*)/([^/]*)\.html?+(.*)+$ /?lang=$1&subid=$2&id=$3&$4 [L] 

Но это не работает.

С наилучшими пожеланиями

ответ

1

RewriteRule удаляет строку запроса, включая любой идентификатор сессии. Вам нужно добавить QSA флаг (запрос строки Append):

RewriteRule ^([^/]*)/([^/]*)/([^/]*)\.html$ /?lang=$1&subid=$2&id=$3 [L,QSA] 

Это сохранит свой идентификатор сессии.

+0

0 ... – user1137370

+1

Работает ли обработка сеанса без использования mod_rewrite? – Floern

+1

Да, это сработало отлично :-( – user1137370