第一步:确认网站开启REWRITE规则

  一般有两种情况:

  i.apache安装的时候已经包含rewrite功能

  ii.后续配置的时候新添加mod_rewrite.so。这种情况需要在httpd.conf文件中修改配置启动

  在conf目录下httpd.conf中找到

  LoadModule rewrite_module modules/mod_rewrite.so

  这句,去掉前边的注释符号“#”,或添加这句。

  允许在任何目录中使用“.htaccess”文件,将“AllowOverride”改成“All”(默认为“None”):

  # AllowOverride controls what directives may be placed in .htaccess files.

  # It can be “All”, “None”, or any combination of the keywords:

  # Options FileInfo AuthConfig Limit

  #

  AllowOverride All

  第二步:添加.htaccess文件

  在本地新建文件1.txt,并写入以下内容:

  RewriteEngine On
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_URI} !(.*)/$
      RewriteRule ^(.*)$ $1/ [L,R=301]

 

  此段代码意思是将网站后面没有加"/"的目录都加上"/"。

  说明:

  * RewriteCond %{REQUEST_FILENAME} !-f : 指定操作仅针对目录,对指向文件的url不进行rewrite操作;

  * RewriteCond %{REQUEST_URI} !(.*)/$ :判断url是否以斜杠“/”结尾;

  * RewriteRule ^(.*)$ http://www.baiye5.com/$1/ [L,R=301] : 自动将符合上述条件的url以301跳转重定向至以斜杠结尾的版本,比如说将“http://www.baiye5.com/wxarticle”重定向至 “http://www.baiye5.com/wxarticle/”,其中“L”指该行为规则的最后一行,而“R=301”则指明采用301 Redirect。当然,您在使用时应将“http://www.baiye5.com/”替换成自己网站的url。

  将1.txt文件上传至网站根目录。上传后改名为.htaccess。

Apache伪静态在网站目录没有反斜杠后自动添加反斜杠的更多相关文章

  1. Apache下设置网站目录的访问权限

    禁止用户对某一个目录及目录下文件的访问,仅允许本地访问 <Directory "/wwwroot/cert/"> Require local </Director ...

  2. php post get 繁体、日文、韩文时 自动添加 反斜杠 问题

    做些二次开发项目,数据库.文件编码没法大规模的修改,比如二次开发一个日文系统,编码是JA16SJIS,$_POST或$_GET的信息中如果“申請”,得到的信息就会变成“申\請”,多出一个反斜杠! 先贴 ...

  3. CentOS Linux系统下更改Apache默认网站目录

    引言: Apache默认的网站目录是在/var/www/html,我们现在要把网站目录更改到/home/wwwroot/web1/htdocs,操作如下 准备工作: 创建目录: cd /home mk ...

  4. apache配置网站目录的读写权限

    分享下apache中配置网站目录文件权限的方法. 假设http服务器运行用户和用户组是www,网站用户为centos,网站根目录是/home/centos/web. 操作方法与步骤:1,首先,设定网站 ...

  5. CentOS 更改Apache默认网站目录

    http://www.osyunwei.com/archives/789.html引言:Apache默认的网站目录是在/var/www/html, 现在要把网站目录更改到/home/wwwroot/w ...

  6. linux网站目录及Apache权限的设置

    apache服务器访问权限设置禁止所有访问:Options Indexes FollowSymLinks 改为 Option None   Apache单个或多个目录禁止访问方法   这种方法通常用来 ...

  7. apache 配置网站目录,虚拟目录,新端口

    1 配置网站目录,以ubuntu为例 1)打开apache的默认配置文件夹:cd /etc/apache2/sites-available 2)打开配置文件,本机为sudo vi  000-defau ...

  8. Linux更改Apache网站目录出错:Document root must be a directory解决

    Linux更改Apache网站目录出错:Document root must be a directory解决   修改   DocumentRoot     <Directory " ...

  9. Apache服务器添加网站目录不在根目录的情况

    Apache原本根目录: /var/www 需要添加的新的Apache网站目录 /home/*** 在Apache服务器虚拟配置下添加一个站点 <VirtualHost *:> Serve ...

随机推荐

  1. 标签中id和name的作用和区别

    id:作为标签的唯一标识.name:作为可与服务器交互数据的HTML元素的服务器端的标示.

  2. IIS发布问题汇总

    1.未能加载文件或程序集“System.Data.SQLite” 在IIS界面选择应用程序池->选择所使用的.net 版本->高级设置->将"使用32位应用程序" ...

  3. 培训第五天---JS

    &&与||的基础<script type="text/javascript"> var c = 4||3; alert(c);</script&g ...

  4. Combobox

    1.方式一 <select id="cc" class="easyui-combobox" name="dept" style=&qu ...

  5. 【原创】【2015最新】微信公众平台开发手把手入门之一:缘起微信公众号(PHP,MYSQL, BAE)

    最近因为业务的需要,老板布置做了两个月简单的的微信公众平台开发,从网上搜了一些资料,实话说资料不多. 在参考学习的过程中也遇到了不少难缠的小问题,虽然不难逾越,但是确实浪费了时间. 我发现网上仅有不多 ...

  6. CRLF和LF

    协作项目,开发环境不同(mac,window)构建过程中,命令行报错(expecting LF but only find CRLF) 打开git bash,输入 $ git config --glo ...

  7. centos7 下修改时区

    #timedatectl status //显示当前设置 #timedatectl list-timezones //列出时区 #timedatectl set-timezone Asia/Shang ...

  8. http国际化模拟请求

    现在好多系统都有国际化的需求.不同国家的人读到不同的语言数据.那么怎么模拟请求的时候区分是哪个国家的语言信息,代码说明. HttpPost methed = new HttpPost("模拟 ...

  9. SpingMVC ModelAndView, Model,Control以及参数传递

    1.web.xml 配置: <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class& ...

  10. delphi IOS 获取电池信息

    procedure TDeviceInfoForm.btnGetDeviceInfoClick(Sender: TObject); var Device : UIDevice; begin Devic ...