<分区>
Possible Duplicate:
Internal Server Error
我想用 php 更改我网站的 URL,所以我为此使用 .htaccess 文件,但它显示内部服务器错误 500。
谁能帮我解决服务器错误?
寻找您的宝贵意见。
<分区>
Possible Duplicate:
Internal Server Error
我想用 php 更改我网站的 URL,所以我为此使用 .htaccess 文件,但它显示内部服务器错误 500。
谁能帮我解决服务器错误?
寻找您的宝贵意见。
最佳答案
找出导致 500 服务器错误的原因 以下是一些基本步骤,您可以使用这些步骤找出导致错误的原因。
出现此错误的主要原因有 3 个:
文件或文件夹权限
[Sun Jun 05 12:03:22 2011] [error] [client 66.249.72.82] Application.cpp:601 中的 SoftException:目录“/home1/examplec/public_html”可按组写入
在这种情况下,您的帐户中有一个文件夹的权限集无效。要更正此问题,只需将权限从“777”恢复为“755”。 虽然每个站点可能不同,但以下权限通常是正确的使用权限:
文件 - 644 CGI 脚本 - 755 目录 - 755
您可以使用位于 cPanel 的文件类别中的文件管理器、FTP 客户端或使用 SSH/Bash 中的“chmod”命令修改权限。 有关如何更改文件和文件夹权限的更多信息,请参阅我们的知识库文章设置文件和用户权限
.htaccess 中的错误代码或语法
.htaccess 可以做的事情范围很广而且使用起来并不困难,但是如果您没有正确输入语法,它可能会导致服务器 500 错误。下面列出了可能导致错误的一些常见示例。
语法未关闭
[Sun Jun 05 12:11:38 2011] [alert] [client 66.249.72.82]/home1/examplec/public_html/.htaccess:/home1/examplec/public_html/.htaccess:3: ExampleRule/Module> 是没有关闭。
同样,解决方案是简单地修复语法或删除它。在这种情况下,正确关闭结尾的“”指令并将规则放在自己的行上以解决问题。
这些只是一些可能由错误的 .htaccess 参数引起的常见示例。您遇到的情况可能会有所不同,但通常错误消息的描述性足以确定错误,而无需进一步调查。 php.ini 配置不当 力型
当您使用的文件具有(或不具有)与该文件类型的正常扩展名不同的扩展名时,您可以在 .htaccess 文件中使用 ForceType 以明确服务器如何处理该文件(或文件夹)(这适用于没有 phpsuexec 的服务器)。
一个例子:当你有一个名为“item”的文件(就像 Nucleus 用于 FancyURL 的文件)并希望服务器将其解析为 php 时,你可以在你的 .htaccess 文件中使用以下代码:
ForceType application/x-httpd-php
但是,由于我们的服务器使用 phpsuexec,这将导致内部服务器错误。要解决这个问题,您可以简单地使用 SetHandler 而不是 ForceType,因此您的 .htaccess 文件变为:
SetHandler application/x-httpd-php
php_value 在没有 phpsuexec 的服务器上,可以使用 .htaccess 文件中的 php_value 语句来更改 php 的设置(实际上是覆盖 php.ini 中的设置)。在带有 phpsuexec 的服务器上,这也会导致服务器错误。要解决此问题,您可以使用一个 php.ini 文件,将其放在与放置 .htaccess 文件的文件夹相同的文件夹中。在该 php.ini 文件中,您可以更改所有 php 值。您只需将要修改的值放入该文件即可。例如,如果您想将 short_open_tag 设置为 Off,您会使用 short_open_tag 吗? = 在您的 .htaccess 文件中关闭。使用 php.ini 文件会导致:
[PHP]
short_open_tag = Off
关于php - 使用 .htaccess 文件时出现 "Internal Server Error 500",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14116869/