LimeSurvey 7 Question Editor
From LimeSurvey Manual
Switching URL format from "get" to "path" to enable the new editor in LimeSurvey 7
Overview
LimeSurvey 7 introduces a new React-based survey editor. If you are an existing LimeSurvey CE user who has upgraded from an earlier version, your installation is maybe configured to use the get URL format. The new editor requires the path URL format to be enabled. This article explains why, what the difference is, and how to make the switch safely.
Why is the URL format change required?
The new React editor relies on modern browser routing and API calls that use path-based URLs. Internally, LimeSurvey checks whether the path format is active before allowing the editor to be enabled. If your installation is still using the get format, you will see the editor toggle either greyed out or accompanied by a warning message about the URL format requirement.
In short: without switching to path, the new editor cannot be activated.
What is the difference between get and path URL format?
get format (legacy default)
Parameters are passed as HTTP query string arguments after a ? character.
Examples:
| Page | URL |
|---|---|
| Admin area | https://example.com/limesurvey/index.php?r=admin
|
| Survey start | https://example.com/limesurvey/index.php?r=survey/index&sid=123456
|
| Survey with token | https://example.com/limesurvey/index.php?r=survey/index&sid=123456&token=abc123
|
This format works on virtually all web server configurations without any special setup.
path format (required for the new editor)
The routing part of the URL is embedded as segments of the URL path, separated by /. Custom parameters such as tokens and user-defined variables are still passed as regular query string arguments after a ? character.
Examples:
| Page | URL |
|---|---|
| Admin area | https://example.com/limesurvey/index.php/admin
|
| Survey start | https://example.com/limesurvey/index.php/123456
|
| Survey with token | https://example.com/limesurvey/index.php/123456?token=abc123
|
| Survey with token + custom variables | https://example.com/limesurvey/index.php/123456?token=abc123&myvar=321
|
Note: Existing panel integrations and other use cases that pass custom URL parameters (e.g. ?token=...&panelid=...) will continue to work without modification. Only the routing part of the URL has changed; query string parameters are appended the same way as before.
|
This format produces cleaner, more readable URLs and is the standard for modern web applications. It requires the web server to support URL rewriting (Apache mod_rewrite, nginx try_files, or equivalent).
Note: With showScriptName = true (the default), index.php remains visible in the URL. Setting it to false removes it entirely but requires additional server configuration and is not covered by this article.
|
Risks and considerations when switching active surveys
Switching the URL format is a breaking change for any URLs that were generated using the old get format. Review the following points before proceeding.
1. Participant survey links will change
If you have already distributed survey invitation links to participants — by email, SMS, or published on a website — those links use the old get-style format and will stop working after the switch.
Example of a broken old link:
https://example.com/limesurvey/index.php?r=survey/index&sid=123456&token=abc123
You have two options:
- Update the links: Send participants the new path-style URL.
- Set up server-side redirects: Configure your web server to redirect old
?r=survey/index&sid=…URLs to the new path-style equivalent. This is the preferred approach when re-contacting participants is not practical.
2. Pending email invitations
Email invitations already sent via the LimeSurvey token system contain embedded survey links. Those links are fixed in the email body and cannot be updated retroactively. Participants who have not yet opened their invitation will receive a broken link.
Mitigation: Configure a server-side redirect as described above before making the switch.
3. Bookmarks and external integrations
Any bookmarks saved by participants, or external systems (e.g., panel providers, CRM integrations) that call LimeSurvey using the old URL format, will break after the switch.
Audit all known entry points to your surveys before switching.
4. Embedded surveys and iFrames
If you have embedded surveys in external websites using <iframe> or JavaScript embeds pointing to get-style URLs, those embeds must be updated after the switch.
5. No impact on collected response data
The URL format change does not affect your collected survey data, active survey configuration, question logic, or any other internal settings. The switch is purely about how URLs are structured externally.
6. Reverting is possible
If you encounter problems, you can revert the change by setting 'urlFormat' => 'get' again in config.php following the same steps above. The old get-style URLs will work again immediately. Note that reverting will disable the new editor.
How to switch from get to path
Follow these steps carefully. It is important to log out and fully close LimeSurvey before editing the configuration, to avoid session inconsistencies.
Step 1 – Verify your server supports URL rewriting
Before making any changes, confirm that your web server has URL rewriting enabled:
- Apache: The
mod_rewritemodule must be enabled. Check that the.htaccessfile in your LimeSurvey root directory is being processed (AllowOverride AllorAllowOverride FileInfo Optionsmust be set for your document root in the Apache configuration). - nginx: Your
nginx.confor site configuration must include atry_filesdirective that forwards requests toindex.php. - IIS: The URL Rewrite module must be installed and a
web.configrewrite rule must be in place.
| Warning: If you are unsure whether URL rewriting works, try accessing a path-style URL after the change. If you get a 404 error, URL rewriting is not configured correctly. Consult your hosting provider before proceeding. |
Step 2 – Log out of the LimeSurvey administration
Log out from the LimeSurvey administration panel using the logout button. Do not simply close the browser tab.
Step 3 – Close all LimeSurvey browser tabs
Close all browser tabs or windows that have LimeSurvey open. This ensures that no old session data or cached URLs cause confusion after the configuration change.
Step 4 – Edit config.php
Open the file application/config/config.php in a text editor on your server.
Locate the urlManager section. It will look similar to this:
'urlManager' => array(
'urlFormat' => 'get', // <-- change this
'rules' => array(
// You can add your own rules here
),
'showScriptName' => true,
),
Change 'get' to 'path':
'urlManager' => array(
'urlFormat' => 'path', // <-- changed
'rules' => array(
// You can add your own rules here
),
'showScriptName' => true,
),
Save the file.
Step 5 – Open the administration area with the correct URL
Do not use a bookmark or browser history entry that still points to a get-style URL. Instead, navigate manually to the path-style URL of your administration area:
https://example.com/limesurvey/index.php/admin
Replace https://example.com/limesurvey with your actual LimeSurvey base URL.
Log in normally. The new editor can now be activated from the editor selection modal or from your account settings.
Summary checklist
| Step | Action |
|---|---|
| ✅ | Verify web server URL rewriting is supported and enabled |
| ✅ | Log out of the LimeSurvey administration area |
| ✅ | Close all LimeSurvey browser tabs |
| ✅ | Edit application/config/config.php: change urlFormat from 'get' to 'path'
|
| ✅ | Open the admin area using the path-style URL: …/index.php/admin
|
| ✅ | Update or redirect any previously distributed survey links |
| ✅ | Update bookmarks and external integrations |
| ✅ | Activate the new editor from the editor selection modal |