Вы должны быть более точными с тем, что соответствует регулярному выражению:
'^ ([a-zA-Z0-9 - /] +) $' будет соответствовать почти все.
Вам нужно решить, что отличает страницу категории от страницы новостей, и сопоставить ее, например:
RewriteRule ^category/([a-zA-Z0-9-/]+)$ categories.php?url=$1
RewriteRule ^category/([a-zA-Z0-9-/]+)/$ categories.php?url=$1
RewriteRule ^news/([a-zA-Z0-9-/]+)$ news.php?url=$1
RewriteRule ^news/([a-zA-Z0-9-/]+)/$ news.php?url=$1
Вы можете дифференцировать правила другим способом, но вы делаетенужно сделать это.
Вы можете, например, изменить правила, изложенные в моем предложении выше, чтобы правило категории перехватывало все, что не имеет префикса новостей:
RewriteRule ^news/([a-zA-Z0-9-/]+)$ news.php?url=$1
RewriteRule ^news/([a-zA-Z0-9-/]+)/$ news.php?url=$1
RewriteRule ^([a-zA-Z0-9-/]+)$ categories.php?url=$1
RewriteRule ^([a-zA-Z0-9-/]+)/$ categories.php?url=$1