500 Internal Server Error when using .htaccess with RewriteEngine
I am on the shared host Bounceweb and I am trying to add some rewrite rules to make my links look prettier.
One of these rules is to make the url: http://mysite.com/upload
point to: http://mysite.com/upload.php
. I have this in my .htaccess file:
RewriteEngine on
RewriteRule ^upload$ u开发者_如何转开发pload.php
but all it's giving me is a 500 Internal Server Error. I looked at my logs and this comes up a lot:
[alert] [client 81.179.29.185] /home/minecraf/public_html/.htaccess: Invalid command '\xef\xbb\xbfRewriteEngine', perhaps misspelled or defined by a module not included in the server configuration
Does this mean my host doesn't support .htaccess? Pretty lame if they don't. I've already tried changing the permissions of .htaccess to 777 and it doesn't help.
Thanks!
\xef\xbb\xbf
are three invisible junk characters (at least from Apache's perspective) called the Unicode BOM, or byte order mark. Apache thinks that those characters are part of the command that follows right after. This is what you see in the log, though the characters are escaped so they're visible to the naked eye. \xef\xbb\xbfRewriteEngine
In your editor, especially if your editor is Notepad, make sure you're saving your file without a BOM. This should be selectable in the save as dialog or elsewhere.
It might be the mod_rewrite
module is not loaded.
Windows xampp : Open xampp/apache/conf/httpd.conf
and uncomment mod_rewrite module.
Windows wamp : Open wamp/bin/apache/Apache2.x.x/conf/httpd.conf
and uncomment mod_rewrite module.
Ubuntu : a2enmod rewrite && service apache2 restart
or cp /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load
Then reload apache
To remove the BOM in unix use vi and below command
: set nobomb
: wq
Try this:
a2enmod rewrite
/etc/init.d/apache2 restart
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
rewriterule ^upload$ upload.php
</IfModule>
try this.
I had this problem and solved it with:
sudo a2enmod rewrite
sudo service apache2 restart
Just save your .htaccess file with UTF-8 encoding (without BOM) and upload. Recommended to use Notepad++. (in my case that helped).
atb
精彩评论