Pretty URLs breaks dashboard

I have a newly upgraded site v9.3.1. The site was upgraded from an empty v8.5.17 site but with imported filesets from v5.6.4. This was done using @jero Fileset migration Tool, which worked perfectly.

I now have an empty site (no pages) and trying to proceed creating an updated site.

if prettyURLs are enabled, the dasboard can only be accessed by adding /index.php/dasboard to the browser url manually. That gives access but some functions timeout. e.g add page, Page Settings, Tasks.

I have checked .htaccess which seems correct. there don’t seem to be any site settings which correct this behavior. dashboard stuff only works properly without pretty urls.

Sitemap also doesn’t seem to be being read but writes ok. see Sitemap 'no data' for publish location - #6 by darkmatter

Could these issues be connected? something seems broken.

If your .htaccess file looks something like this:

        # -- concrete5 urls start --
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}/index.html !-f
RewriteCond %{REQUEST_FILENAME}/index.php !-f
RewriteRule . index.php [L]
        # -- concrete5 urls end --

Then either you don’t have Apache’s ModRewrite enabled, or your document root isn’t set up to allow any overrides, i.e. it’s not bothering to process the .htaccess file. Both of these are web server configuration issues that your web host would need to resolve.

If you’re feeling brave, you can add some gibberish to the end of .htaccess. If this succeeds in provoking a 500 server error, then you know that the file is being processed, and that it’s likely that ModRewrite is not enabled. If nothing happens, then your document root needs to have some variant of the AllowOverride directive so that the file is actually processed. e.g.

        <Directory /var/www/myvhost>
                AllowOverride All

(this allows anything to be overidden which may be too broad, but nevertheless serves as an exampe)

If you do decide to edit .htaccess, make a backup first. Just adding the word “hello” to the end of the file should be enough to make its syntax invalid.

…and if you need to turn url rewriting off so you can use the system, if you get desperate and you can’t do it through the dsahboard, you can edit application/config/generated_overrides/concrete.php and change

'url_rewriting' => 0,

Make a backup first since corrupting this file will brick your site.


That was it!..solved just needed to enable in server by > a2enmod rewrite

Thank you

1 Like