Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1632852
  • 博文数量: 1481
  • 博客积分: 26784
  • 博客等级: 上将
  • 技术积分: 17045
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-12 09:22
文章分类

全部博文(1481)

文章存档

2014年(10)

2013年(353)

2012年(700)

2011年(418)

分类: 系统运维

2013-01-11 10:18:53

昨天在公司上传一个做好的项目,结果访问时老是报500的错误,认为是人家万网的虚拟主机不支持url rewrite,但是后来人家说是支持的,问题应该出在.htaccess的编写上,但是项目在本地和我们公司的服务器上都是可以运行的,为什么到万网的服务器就报错了呢?后来找到了原因,是因为本地和我们公司的服务器都是windows系统,而万网上买的是linux的系统,不同的操作系统上,.htaccess的规则编写也有不同,如:windows系统下你可以不指定RewriteBase,但是linux上就不行了。所以在liunx 系统下的.htaccess文件一定得注意(包括大小写)。

  一般Linux主机都能很好地支持Apache的mod_rewrite模块,要URL重写生成永久固定链接也很简单,只要修改web根目录下的.htaccess文件就可以了。下面我将 如何在apache和IIS环境下进行url rewrite 配置做了一下整理。
一、Apache环境下的URL rewrite:
由于Apache自带了mod_rewrite 模块,要实现URL rewrite 生成伪静态页面很方便。
1. 确认apache模块已经开启,打开apache目录下的conf/httpd.conf文件,找到LoadModule Rewrite_module libexec/mod_Rewrite.so 这一行,假如前面有 # 将其去掉;

2. 配置目录的allowoverwrite属性,

    Options FollowSymLinks
    AllowOverride None 改成 AllowOverride ALL
    Order allow,deny
    Allow from all


重启apache 命令 service httpd restart  //重启后就可以用了

3. 创建.htaccess文件,新建一个txt文档,将其命名为htaccess.txt,然后在文档里写入下面的代码:


RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]


保存为 htaccess.txt 上传到网站根目录下,最后将文件名修改为 .htaccess,这样在apache环境下服务器端的url rewrite配置就完成了。

原文地址:

阅读(563) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~