500将.htaccess与重写引擎一起使用时出现内部服务器错误
我在共享主机上,我正在尝试添加一些重写规则,使我的链接看起来更漂亮 这些规则之一是使url:500将.htaccess与重写引擎一起使用时出现内部服务器错误,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我在共享主机上,我正在尝试添加一些重写规则,使我的链接看起来更漂亮 这些规则之一是使url:http://mysite.com/upload指向:http://mysite.com/upload.php。我的.htaccess文件中有以下内容: RewriteEngine on RewriteRule ^upload$ upload.php 但它给我的只是一个500内部服务器错误。我看了我的日志,发现了很多: [alert] [client 81.179.29.185] /home/minec
http://mysite.com/upload
指向:http://mysite.com/upload.php
。我的.htaccess文件中有以下内容:
RewriteEngine on
RewriteRule ^upload$ upload.php
但它给我的只是一个500内部服务器错误。我看了我的日志,发现了很多:
[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
这是否意味着我的主机不支持.htaccess?如果他们不这么做,那就太差劲了。我已经尝试将.htaccess的权限更改为777,但没有任何帮助
谢谢
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
rewriterule ^upload$ upload.php
</IfModule>
重新启动发动机
重写基/
重写规则^upload$upload.php
试试这个。
\xef\xbb\xbf
是三个不可见的垃圾字符(至少从Apache的角度来看),称为Unicode BOM或字节顺序标记。Apache认为这些字符是紧接着的命令的一部分。这是您在日志中看到的,尽管这些字符是转义的,因此肉眼可见<代码>\xef\xbb\xbfWriteEngine
在编辑器中,尤其是如果编辑器是记事本,请确保保存的文件没有BOM表。可以在“另存为”对话框或其他地方选择此选项。尝试以下操作:
a2enmod rewrite
/etc/init.d/apache2 restart
在某些情况下,apache中的mod_rewrite模块可能未加载。检查您的apache配置 更新: Windows xampp:打开
xampp/apache/conf/httpd.conf
并取消对mod_重写模块的注释。Windows wamp:打开
wamp/bin/apache/Apache2.x.x/conf/httpd.conf
并取消对mod_重写模块的注释。Ubuntu:输入终端:
a2enmod rewrite
Ubuntu手册:
cp/etc/apache2/mods可用/rewrite.load/etc/apache2/mods启用/rewrite.load
然后重新加载apache
Ubuntu:
重新加载服务apache2
或重新启动服务apache2
Windows:来自xampp或wamp控制面板。我遇到了这个问题,并通过以下方法解决了它:
sudo a2enmod rewrite
sudo service apache2 restart
要在unix中删除BOM表,请使用vi及以下命令 :设置nobomb
:wq只需使用UTF-8编码(无BOM)保存.htaccess文件并上传即可。 建议使用记事本++。(就我而言,这很有帮助)
atb没有,仍然出现500错误。错误日志显示:
[alert][client 81.179.29.185]/home/minecraf/public\u html/.htaccess:没有匹配的部分
ahhh我明白了。我使用FTP客户端自己的编辑器来执行.htaccess,这可能就是为什么会发生这种情况。刚刚用记事本做的,现在一切都好了,谢谢:)你刚刚救了我的命!我不明白为什么我的重写经常出现500个错误:)将其保存为Asci,并且它像charmIt一样工作,谢谢!