2015-02-01 2 views
-2

Я недавно установил последнюю версию LimeSurvey, и, хотя у нее есть много функций, которые мне нравятся, я действительно намереваюсь сделать одно обследование доступным в subdomain survey.example.com.LimeSurvey: Пропустить «Доступны следующие обзоры» Страница?

Я хочу пропустить страницу, в которой говорится: «Доступны следующие обследования:», который является "survey.example.com/index.php". и идти прямо на обследование, которое "survey.example.com/index.php/311746?lang=en"

Я попытался установки DirectoryIndex в .htaccess, но это ничего не делать

DirectoryIndex index.php/311746?lang=en

Я пытался играть с mod_rewrite, но само по себе уже LimeSurvey созданы условия, поэтому все, что у меня получается, ломается (вероятно, так как они уже переписывают index.php).

<IfModule mod_rewrite.c> 
RewriteEngine on 

# if a directory or a file exists, use it directly 
RewriteCond %{REQUEST_FILENAME} !-f 

# otherwise forward it to index.php 
RewriteRule . index.php 
</IfModule> 

Я собирался попробовать редирект, но index.php больше, чем просто индекс, так что я не хочу, чтобы изменить это слишком много.

Я пробовал искать, но мне не повезло.

+0

Где ваш текущий код? –

+0

У меня нет ничего - я не мог заставить mod_rewrite работать с существующими условиями, предварительно встроенными в приложение, а index.php не является реальной страницей (это все PHP-код, без HTML), поэтому я не думал, что было бы разумно переадресовать туда. Я ищу другие предложения для достижения той же цели, которая не связана с mod_rewrite или index.php redirect. – cwaddilove

+0

Я добавил, что мне нужно работать с – cwaddilove

ответ

1

Тогда почему бы не просто переписать основное правило опроса. Вместо того, чтобы переписывать его на основной index.php, который вы не хотите делать, напишите его непосредственно в интересующем вас опросе. Вы должны иметь возможность использовать это в своем htaccess, чтобы перейти непосредственно к опросу.

<IfModule mod_rewrite.c> 
RewriteEngine on 

# if a directory or a file exists, use it directly 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
# otherwise forward it to the survey 
RewriteRule . index.php/311746?lang=en [R=301,L] 
</IfModule> 

Позвольте мне знать, если это решает Ваш вопрос

+0

Спасибо, Джек! Это первый, который я пробовал, который не полностью его сломал (все мои попытки, похоже, пытались загрузить непосредственно из пути/var/www в отличие от самого URL-адреса), и я все еще могу закончить такие опросы, но, к сожалению, он все равно помещает меня на эту глупую целевую страницу (так что она снова записывает часть ее, но не добавляет номер или часть lang). Похоже, ваша идея самая лучшая, и похоже, что мы на правильном пути. Я перезапускаю apache после внесения этих изменений, но ничего не записываю в журналы. Я постараюсь перевернуть верность и тестирование, а также – cwaddilove

+0

. Идет ли прямо к этому 'survey.example.com/index.php/311746? Lang = en' работе? Там действительно не должно быть никаких причин, почему это не сработает. Это должно быть то же самое, что и в браузере. что все правила в .htaccess? –

+0

Он делает это - и это то, о чем я подумал (у меня была аналогичная настройка того, что у вас было в качестве первого теста, но у меня точно не было [R = 301, L], поэтому я надеялся, что просто пропустил это) - для аргументов я даже попытался удалить старый и создать новую .htaccess прямую копию и вставить из того, что у вас было, и до сих пор нет кубиков. Я чувствую, что mod_rewrite отключен, но он работает в другом месте, и я вижу, что он включен в phpinfo/httpd.conf - он меня забивает! – cwaddilove

Смежные вопросы