I installed WordPress on EC2, located in /var/www/html/wordpress
. I followed the WordPress guide to copy index.php and .htaccess to root which is /var/www/html
, and modified index.php and setting in admin panel. It works pretty well if I stick to only default link, such as: http://www.cubcanfly.com/?p=5
, however other permalink options fails, actually all of the permalink options.
My .htaccess is
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
in /etc/httpd/conf/httpd.conf
LoadModule rewrite_module modules/mod_rewrite.so
is NOT commented.
Thanks in advance
I did not need to edit RewriteBase in .htaccess. The problem really is in httpd configuration for EC2 machines.
My .htaccess -
In /etc/httpd/conf/httpd.conf -
Finally I find the problem. It's the AllowOverride option in httpd.conf which is located in /etc/httpd/conf/httpd.conf, "sudo find / -name httpd.conf -print" can easily find it. I changed any AllowOverride NONE->ALL where i can find in the file. It just worked,even without doing any change to .htaccess
This .htaccess works on my host in which wordpress is installed in its own directory.
Thank you @adlawson @Will, without you, I couldn't find the problem.
http://codex.wordpress.org/Using_Permalinks this official guide is quite enough to use permalink even wordpress is installed in a sub directory.
Have a look at this post How does RewriteBase work in .htaccess
You need to change
RewriteBase /
toRewriteBase /wordpress