As Vince said, you need to add the urlManager config, as he gave it. index.php is hidden by ‘showScriptName’ => false.
I’m sure you’ve copied the .htaccess file too, but it might be missing this:
RewriteBase /~marc/blog
In the above, my local/user web root points to /home/marc/public_html/ and has the alias ~marc/
My blog project is in /home/marc/public_html/blog/, so I use the RewriteBase shown above.
If you are using, say, /var/www/blog/, then you will need a Rewrite Base of /blog
This should really be in the docs.
The complete .htaccess for my blog project is:
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
RewriteBase /~marc/blog
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule . index.php
as you can see he redirects the rules to the Public/index.php file. and for some reason that doesn’t work when i remove the index.php from the address bar.