Portal Pages Return 404 #
After installing or activating DMSI Service Management, customer portal pages may return HTTP 404 Not Found errors even though the plugin is active and appears to be working correctly in admin.
What DMSI Service Management Adds
The customer portal pages at/customer-portal/services/and its sub-pages are registered by this extension. They do not exist in Core or WordPress by default.
Symptom #
Navigating to any of the following URLs returns a 404 page:
/customer-portal/services//customer-portal/services/contracts//customer-portal/services/requests//customer-portal/services/submit-request//customer-portal/services/assets//customer-portal/services/satisfaction-survey/
The admin area works normally. Only portal URLs are affected.
Cause #
WordPress uses a rewrite rule system to map pretty URLs to internal query variables. When a plugin registers new URL patterns, those patterns are added to WordPress’s rewrite rules array. However, WordPress does not automatically apply the new rules to the server’s active rewrite configuration — a manual flush is required.
When DMSI Service Management is activated, it registers new rewrite rules, but the rules are not effective until the rewrite table is flushed.
Resolution #
- Log in to the WordPress admin area.
- Navigate to Settings > Permalinks.
- Do not change any settings.
- Click Save Changes.
This action flushes the WordPress rewrite rules and writes the updated rules (including the new portal paths) to the .htaccess file (Apache) or the equivalent server configuration.
After saving, the portal URLs will work immediately. No other changes are needed.
Prevention #
This step must be performed after every activation of the plugin — including the first installation, after a deactivation/reactivation cycle, or after a plugin update that modifies rewrite rules.
If you are automating deployment (e.g., via WP-CLI), the equivalent command is:
wp rewrite flush
