Вы должны добавить (/?) В конце регулярного выражения, чтобы сказать, что может быть один или нет / char И вы должны удалить начало ^ char, что обозначает начало строки:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule /posts/([^/]*)/([A-Za-z0-9-]+)(/?)$ /posts.php?aid=$1 [L]
</IfModule>