建什么网站可以赚钱,柳市做网站,用flash做网站教程,重庆公司注册服务如何让apache支持.htaccess 解决Internal Server Error The server …错误 文章来源#xff1a;小灰博客| 时间#xff1a;2013-12-25 12:17:08| 作者#xff1a;Leo | 2 条评论 文章分类#xff1a;IT技术分享、PHP、小技巧 标签#xff1a; .htaccess、apache 今天…如何让apache支持.htaccess 解决Internal Server Error The server …错误 文章来源小灰博客| 时间2013-12-25 12:17:08| 作者Leo | 2 条评论 文章分类IT技术分享、PHP、小技巧 标签 .htaccess、apache 今天朋友发来一套叫“PHP爱家房产网源码v5.01_destoon内核%4017558.net”的程序让修改点东西我在本地环境打开测试导入数据库后打开发现报错应该是服务器内部错误提示 Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, adminsky00.com and inform them of the time the error occurred, and anything you might have done that may have caused the error. More information about this error may be available in the server error log. 我看了下这里网站里的所有东西都是这样报错就是图片和TXT也打不开然后查看了一下程序发现里面有三个文件.htaccess、 httpd.ini、nginx.conf我想应该是这几个家伙在作怪首先想到的就是.htaccess这个分布文件将其删除果断打开网站了那 么找到原因了把删除了的找回来去apache里开启.htaccess就好了下面是开启方法 在apache配置文件httpd.conf中找到 Options FollowSymLinks AllowOverride None 有的版本是这样写的 Options FollowSymLinks ExecCGI IndexesAllowOverride None 总之不管怎么写你只需要把下面的 AllowOverride None改为AllowOverride All 然后在找到 LoadModule rewrite_module modules/mod_rewrite.so 把这个前面的“#”号去掉就是去掉注释然后重启apache.搞定 下面记载点.htaccess的写法 htaccess 写法 Apache中的.htaccess(或者”分布式配置”了针对目录改变配置的方法即在特定的文档目录中放置包含或多个指令的以作用于此目录及其子目录。作为所能的命令受到限制。***Apache的AllowOverride指令来设置。 子目录中的指令会笼盖更高级目录或者主器配置中的指令。 .htaccess必需以ASCII模式上传最好将其权限设置为644。 错误文档的定位 常用的客户端哀求错误返回代码401 Authorization Required403 Forbidden404 Not Found405 Method Not Allowed408 Request Timed Out411 Content Length Required412 Precondition Failed413 Request Entity Too Long414 Request URI Too Long415 Unsupported Media Type 常见的器错误返回代码 500 Internal Server Error 利用.htaccess指定事先制作好的错误提醒页面。一般下人们专门设立目录例如errors放置页面。然后再.htaccess中加入如下的指令 ErrorDocument 404 /errors/notfound.htmlErrorDocument 500 /errors/internalerror.html 一条指令一行。上述第一条指令的意思是对于404也找到所的文档的得显示页面为/errors目录下的notfound.html页面。不难看出语法格局为 ErrorDocument 错误代码 /目录名/名.扩展名 所提示的很少的话不必专门制作页面直接在指令中HTML号了例如下面例子 ErrorDocument 401 “你权限访问该页面请抛却” 文档访问的密码保护要利用.htaccess对某个目录下的文档设定访问和对应的密码首先要做的是生成.htpasswd的文本文档例如 zheng:y4E7Ep8e7EYV 这里密码经由加密找些工具将密码加密成.htaccess的编码。该文档最好不要放在www目录下建议放在www根目录文档之外这样更为安全些。 有了授权文档在.htaccess中加入如下指令了 AuthUserFile .htpasswd的器目录AuthGroupFile /dev/null 授权访问的目录AuthName EnterPasswordAuthType Basic 授权类型 是的主人应该处处为着想。 —— 雷锋require user wsabstract 允许访问的但愿表中都允许 require valid-user 注括号部门为学习添加的注释 拒绝来自某个IP的访问 我不想某个政府部门访问到站点的那.htaccess中加入该部门的IP而将它们拒绝在外。 例如 order allow,denydeny from 210.10.56.32deny from 219.5.45.allow from all 第二行拒绝某个IP第三行拒绝某个IP段也219.5.45.0~219.2.45.255 想要拒绝人用deny from all好了。不止用IP也用域名来设定。 保护.htaccess文档在.htaccess来设置目录的密码保护时它包含了密码的路径。从安全考虑有必要把.htaccess也保护起来不让别人看到其中的。虽然用其他做到这点好比文档的权限。不外.htaccess本身也能做到只需加入如下的指令 order allow,denydeny from all URL转向 可能对重新规划将文档了迁移或者更改了目录。这来自搜索引擎或者其他链接过来的访问就可能犯错。这种下如下指令来完成旧的URL自动转向到新的 Redirect /旧目录/旧文档名 新文档的 或者整个目录的转向 Redirect 旧目录 新目录 改变缺省的首页 一般下缺省的首页名有default、index等。不外有些目录中没出缺省而是某个特定的名好比在pmwiki中是 pmwiki.php。这种下要记住名来访问很麻烦。在.htaccess中等闲的设置新的缺省名 DirectoryIndex 新的缺省名 也列出多个顺序表明它们之间的优先级别例如 DirectoryIndex filename.html index.cgi index.pl default.htm 防止盗链 不喜欢别人在的网页上连接的、文档的话也htaccess的指令来做到。 所的指令如下 RewriteEngine onRewriteCond %{ HTTP_REFERER } !^$RewriteCond %{ HTTP_REFERER } !^http://(www.)?mydomain.com/.*$ [NC]RewriteRule .(gifline;jpg)$ – [F] 觉得让别人的页面开个天窗不好看那用一张来代替 RewriteEngine onRewriteCond %{ HTTP_REFERER } !^$RewriteCond %{ HTTP_REFERER } !^http://(www.)?mydomain.com/.*$ [NC]RewriteRule .(gifline;jpg)$ http://www.mydomain.com/替代名 [R,L] 其它补充在给出如何配置Apache支持.htaccess文件之前首先申明一下使用.htaccess文件会降低httpd服务器的一点性能。 配置方法找到Apache的httpd.conf配置文件编辑器打开。 //找到Directory /Options FollowSymLinksAllowOverride None/Directory //修改为 Directory /Options FollowSymLinksAllowOverride All/Directory //就可以了 /*如果需要使用.htaccess以外的其他文件名可以用AccessFileName指令来改变。例如需要使用.config 则可以在服务器配置文件中按以下方法配置*/AccessFileName .config 通常.htaccess文件使用的配置语法和主配置文件一样。AllowOverride指令按类别决定了.htaccess文件中哪些指令才是有效的。 (不)使用.htaccess文件的场合一般情况下不应该使用.htaccess文件除非你对主配置文件没有访问权限。有一种很常见的误解认为用户认证只能通过.htaccess文件实现其实并不是这样把用户认证写在主配置文件中是完全可行的而且是一种很好的方法。.htaccess文件应该被用在内容提供者需要针对特定目录改变服务器的配置而又没有root权限的情况下。如果服务器管理员不愿意频繁修改配置则可 以允许用户通过.htaccess文件自己修改配置尤其是ISP在同一个机器上运行了多个用户站点而又希望用户可以自己改变配置的情况下。虽然如此一般都应该尽可能地避免使用.htaccess文件。任何希望放在.htaccess文件中的配置都可以放在主配置文件的段中而且更高效。避免使用.htaccess文件有两个主要原因。首先是性能。如果AllowOverride启用了.htaccess文件则Apache需要在每个目录中查找.htaccess文件因此无论是否真正用到启用.htaccess都会导致性能的下降。另外对每一个请求都需要读取一次.htaccess文件。还有Apache必须在所有上级的目录中查找.htaccess文件以使所有有效的指令都起作用所以如果请求/ctusky/ctu/sky中的页面Apache必须查找以下文件 /.htaccess/ctusky/.htaccess/ctusky/ctu/.htaccess/ctusky/ctu/sky/.htaccess 一共就要访问4个额外的文件就算这些文件都不存在这也是本文开始说会影响服务器的一点性能的原因。其次是安全。这样会允许用户自己修改服务器的配置这可能会导致某些意想不到的修改所以请认真考虑是否应当给予用户这样的特权。 转载于:https://www.cnblogs.com/brice/p/5367894.html