Apache中使非伪静态url跳转到伪静态url的方法
如何使用.htaccess使非伪静态页面301跳转到伪静态页面然后再跳转?这是一个比较蛋疼的跳转。因为不小心就会搞成死循环导致页面无法打开。好在问题最终解决了。记录并分享出来,给需要的朋友借鉴借鉴。
规则如下:
RewriteRule ^article-([0-9]+).html$ /article.php?id=$1&r=1 [L] RewriteCond %{QUERY_STRING} ^id=([0-9]+)$ [NC] RewriteRule ^article.php$ /articlel-%1.html? [L,R=301]
注意:
创建.htaccess文件,Windows是不允许将文件命名为 . 开头的,我们可以利用UE/EditPlus等工具另存为 .htaccess来实现.
创建后,修改.htaccess文件内容为你的程序对应的伪静态规则,上传到程序文件目录即可实现.这里的程序文件目录请看FTP目录结构篇.下面列出几个常用程序的规则
相关推荐
-
Apache Rewrite实现URL的301跳转和域名跳转
如果要想用到rewrite模块,必须先安装或加载rewrite模块.方法有两种一种是编译apache的时候就直接安装rewrite模块,别一种是编译apache时以DSO模式安装apache,然后再利用源码和apxs来安装rewrite模块. 基于服务器级的(httpd.conf)有两种方法,一种是在httpd.conf的全局下直接利用RewriteEngine on来打开rewrite功能;另一种是在局部里利用RewriteEngine on来打开rewrite功能,下面将会举例说明,需要注意
-
Apache中解决动态地址跳转死循环的方法
问题背景:矿秘书网的历史遗留问题,刚开始由于各种问题,一些动态页面都是用了?id=参数的形式,对seo/seo.html" target="_blank">搜索引擎不友好,经常多方面考虑,还是改成伪静态.这里劝各位站长在做新站时,尽量使用伪静态,不仅对搜索引擎,对用户体验也友好. 问题描述:需要将 /news/show_news.php?id=1 形式的地址伪静态成 /news/1 形式,而且 /news/show_news.php?id=1 在浏览器打开要 301 跳
-
禁止apache显示目录索引的常见方法(apache禁止列目录)
禁止Apache显示目录索引,禁止Apache显示目录结构列表,禁止Apache浏览目录,这是网上提问比较多的,其实都是一个意思.下面说下禁止禁止Apache显示目录索引的常见的3种方法.要实现禁止Apache显示目录索引,只需将 Option 中的 Indexes 去掉即可. 1)修改目录配置: 复制代码 代码如下: <Directory "D:/Apache/blog.phpha.com">Options Indexes FollowSymLinks # 修改为: Op
-
让apache显示目录列表的配置方法
1.apache中显示目录列表 在http.conf中加入如下代码(如有虚拟主机配置,加在虚拟主机配置段内),并把主目录内的index.pho,index.html,index.htm文件删除 复制代码 代码如下: Alias /download "/download" <Directory "/download"> Options Indexes Order allow,deny IndexOptions Charset=UTF-8
-
Apache mod_rewrite实现HTTP和HTTPS重定向跳转
当你的站点使用了HTTPS之后,你可能会想把所有的HTTP请求(即端口80的请求),全部都重定向至HTTPS(即端口443).这时候你可以用以下的方式来做到:(Apache mod_rewrite) <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://jb51.net/$1 [R=301,L] </IfModule&
-
Apache的Rewrite设置多域名301跳转到主域名的方法
如果网站有多个域名,而又不希望分散权重,则可以通过开启Rewrite设置,将多个域名都301跳转到主域名之下,具体代码如下: RewriteEngine On RewriteCond %{HTTP_HOST} ^mituxiu.com [NC,OR] RewriteCond %{HTTP_HOST} ^www.mituxiu.com [NC,OR] RewriteCond %{HTTP_HOST} ^metooshow.com [NC] RewriteRule ^(.*)$ http://www
-
Apache 虚拟目录和默认首页的设置
虚拟目录 1.找到"conf/httpd.conf" 文件 2.在节点:<IfModule alias_module>里增加 Alias /aidd2008 "D:/php/web/aidd2008" 其中 aidd2008 是你想要访问的虚拟目录: D:/php/web/aidd2008 为物理路径,以[/]代替[\]" 我们就在</IfModule>后面接着加: 复制代码 代码如下: <Directory "D:
-
windows中apache 301页面跳转实现方法
实现301页面跳转之前需要对apache配置做下修改如 apache默认是没有开启mod_rewrite模块的, 1,将 复制代码 代码如下: #LoadModule rewrite_module modules/mod_rewrite.so 这一行前面的#号去掉,http.conf的站点目录配置,另一种是空间用户常用的 改为 复制代码 代码如下: LoadModule rewrite_module modules/mod_rewrite.so, 2,将AllowOverride None 改为
-
Apache无法自动跳转却显示目录的解决方法
Apache无法自动跳转却显示目录这是因为Apache服务器下conf/httpd.conf没有配置好,其默认是不跳转,直接显示目录 首先,我们需要禁止Apache直接显示目录. 方法在搜索Options Indexes FollowSymLinks,将其该为Options FollowSymLinks 其实,解决Apache无法自动跳转的问题,这是因为Apache本来只是一个http服务器,不会自动跳转到index.php页面.需要定位<IfModule dir_module>这一项,将Di
-
apache设置自动将http跳转到https的方法
复制代码 代码如下: <Directory "/opt/fivetrees">## Possible values for the Options directive are "None", "All",# or any combination of:# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews## Note that "
随机推荐
- Ext.MessageBox工具类简介
- 使用 Docker 搭建 Laravel 本地环境的教程详解
- MySQL与Oracle 差异比较之七 其它
- Iframe thickbox2.0使用的方法
- Repeater的FooterTemplate中控件内容设置方法
- Android中使用开源框架Citypickerview实现省市区三级联动选择
- 探讨Ajax中有关readyState(状态值)和status(状态码)的问题
- asp,VBscript语法错误,史上最全最详细最精确第1/3页
- 揭秘SQL Server 2014有哪些新特性(4)-原生备份加密
- C#简单生成缩略图的方法
- 使用Java编写控制JDBC连接、执行及关闭的工具类
- Java最全文件操作实例汇总
- PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
- pandas数据分组和聚合操作方法
- OpenGL Shader实例分析(4)闪光效果
- Java for循环详解
- PyCharm设置SSH远程调试的方法
- Vue隐藏显示、只读实例代码
- 详解用python写网络爬虫-爬取新浪微博评论
- python自动化测试之DDT数据驱动的实现代码