Clean URLs
By default OwnShip uses query-string URLs: ?page=my-page. With clean URLs enabled, pages serve as /my-page instead.
Setup
1. Enable in site.ini:
clean_urls = true
2. Create .htaccess next to index.php:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
This works at any path depth — no RewriteBase needed.
Requirements
- Apache with
mod_rewriteenabled (standard on virtually all shared hosting) .htaccesssupport enabled (usually the default)
Local preview
PHP's built-in server does not process .htaccess. Set clean_urls = false in site.ini when using the local preview scripts.