• 为何Apache下.htaccess不起作用,Linux、Windows详解


    可能出现下面这三种的错误可能性:

    第一种:启用 rewrite 和 .htaccess 设置

    rewrite设置:找到apache的配置文件httpd.conf文件,找到:#LoadModule rewrite_module modules/mod_rewrite.so 去掉前面的#号。

    改为:LoadModule rewrite_module modules/mod_rewrite.so

    .htaccess设置

    Windows里面这样设置:AccessFileName htaccess

    Linux里面这样设置:AccessFileName .htaccess。

    Linux比Windows里面文件名前面多了一个点。如果没找到AccessFileName自己在httpd.conf文件最后面加上。

    第二种:AllowOverride 的设置。

    默认AllowOverride 为AllowOverride none。把这个改为:AllowOverride All。如果配置了多个虚拟目录需在每个目录里面开启,实例:

    <VirtualHost *:80>
    DocumentRoot "D:/SvnTrac/svn/SVNRepository/www/root/"
    ServerName 127.0.0.1:80

    DirectoryIndex index.html index.htm index.php index.shtml
    <Directory "D:/SvnTrac/svn/SVNRepository/www/root/">
    Options Indexes FollowSymLinks
    AllowOverride ALL
    Order allow,deny
    Allow from all
    </Directory>
    </VirtualHost>

    <VirtualHost 127.0.0.2:80>
    DocumentRoot "D:/SvnTrac/svn/SVNRepository/www/"
    ServerName 127.0.0.2:80

    DirectoryIndex index.html index.htm index.php index.shtml
    <Directory "D:/SvnTrac/svn/SVNRepository/www/">
    Options Indexes FollowSymLinks
    AllowOverride ALL
    Order allow,deny
    Allow from all
    </Directory>
    </VirtualHost>

    第三种:Options 的设置

    默认设置是:Options Indexes FollowSymLinks

    如果改成以下设置后,就会出错

    Options Indexes FollowSymLinks MultiViews Includes (出错)

    如果要启用,目录浏览 MultiViews

    服务器端包含 Includes (<!–#include virtual=”top.htm” –>)

    为了简单可以设置为:Options All

    前两种是配置中常见的错误,第三种一般少见,最后提醒大家一下,记得配置文件改好后一定要重启服务器啊。

  • 相关阅读:
    wordpress 的主题
    yapi api协作管理平台
    美团外卖券小程序路径过长导致插入文本消息失败的问题解决办法
    mp://XzDiXafjfvLnjvp
    supervisor 命令
    YII beego gin 框架对比
    芝麻微客-企业微信公域到私域流量运营助手
    H5跳转小程序
    PowerBI开发 第十九篇:基于Page创建Tooltip
    PowerBI开发 第十八篇:行级安全(RLS)
  • 原文地址:https://www.cnblogs.com/52php/p/5660052.html
Copyright © 2020-2023  润新知