`

apache虚拟站点安装/增加mod_rewrite模块

    博客分类:
  • php
阅读更多
查看apache的httpd.conf没有LoadModule rewrite_module modules/mod_rewrite.so这一行,则需要手动生成此模块,方法如下:

apache源码包路径为:/ftp/httpd2.2

apache安装路径:/usr/local/apache/

一、增加mod_rewrite模块
# find . -name mod_rewrite.c //在apache的源码安装目录中寻找mod_rewrite.c文件
./modules/mappers/mod_rewrite.c
# cd /ftp/httpd2.2/modules/mappers //进入包含mod_rewrite.c文件的目录
# /usr/local/apache/bin/apxs -c mod_rewrite.c //apxs应指定绝对路径,在你当前正在使用apache的bin目录里
# /usr/local/apache/bin/apxs -i -a -n mod_rewrite mod_rewrite.la
如果没有什么错误的话,应该在你的apache的modules目录(/usr/local/apache/modules)中编译出一个mod_rewrite.so文件。
编辑httpd.conf文件,确认httpd.conf中已经包含mod_rewrite.so的加载语句,如下:
LoadModule mod_rewrite_module modules/mod_rewrite.so
二、重启apache

1、如果出现以下错误:

httpd: Syntax error on line 54 of /usr/local/apache/conf/httpd.conf: Can't locate API module structure `mod_rewrite_module' in file /usr/local/apache/modules/mod_rewrite.so: /usr/local/apache/modules/mod_rewrite.so: undefined symbol: mod_rewrite_module

需要把
LoadModule mod_rewrite_module modules/mod_rewrite.so
改为
LoadModule rewrite_module modules/mod_rewrite.so

2、如果出现以下错误

httpd: Syntax error on line 54 of /usr/local/apache/conf/httpd.conf: module rewrite_module is built-in and can't be loaded

表示模块是内建的,不用再调入,注释掉
#LoadModule rewrite_module modules/mod_rewrite.so

三、对某一虚拟站点开启url重写

1、编辑httpd-vhost.conf,在对应的站点标签内加入:

<Directory "/website/webA">
    AllowOverride All
</Directory>
即:

<VirtualHost *:80>
    DocumentRoot "/website/webA"
    ErrorLog "logs/webA.com-error_log"
    CustomLog "logs/webA.com-access_log" common
<Directory "/website/webA">
    AllowOverride All
</Directory>
</VirtualHost>

四、把对站点的重写规则保存到站点根目录下,文件名为“.htaccess”

五、重启apache即可
分享到:
评论

相关推荐

    Apache虚拟主机配置及WordPress固定连接设置

    总结来说,Apache虚拟主机配置是通过httpd.conf文件创建和管理多个网站的关键步骤,而WordPress固定连接设置则涉及到WordPress的URL结构优化和Apache的mod_rewrite模块的使用。理解并掌握这两个知识点对于任何管理多...

    apache虚拟目录和伪静态的配置

    要在Apache中启用伪静态,首先需要确保`mod_rewrite`模块已加载,然后在相应配置文件(如`.htaccess`)中添加规则。下面是一个简单的伪静态配置示例,用于处理常见的WordPress permalinks: ```apacheconf ...

    apache虚拟主机配置

    ### Apache虚拟主机配置详解 #### 一、Apache虚拟主机配置概览 Apache是目前最流行的Web服务器之一,它支持多种类型的虚拟主机配置。通过虚拟主机技术,可以在同一台物理服务器上运行多个不同的网站,这对于节省...

    配置apache开启虚拟路径(伪静态)的方法.zip

    总结,配置Apache的虚拟路径和伪静态涉及到对Apache配置文件的理解和使用,包括设置VirtualHost、启用`mod_rewrite`模块以及编写`.htaccess`文件中的重写规则。这些步骤对于网站的多域名管理以及优化URL结构至关重要...

    Apache HTTP Server Version 2.2 文档(2013.4.10最新)

    目录: 地址和端口的绑定(Binding) 缓冲指南 配置文件 内容协商 自定义错误响应 动态共享对象(DSO)支持 ...Apache虚拟主机文档 基于IP地址的虚拟主机 大批量虚拟主机的动态配置 基于主机名的虚拟主机

    How-to-install-apache-on-ubuntu.rar_Ubuntu!

    Apache有许多模块可以扩展其功能,比如SSL/TLS支持(mod_ssl)、URL重写(mod_rewrite)等。使用以下命令可以查看已安装的模块: ```bash apache2ctl -M ``` 若要启用或禁用模块,使用`a2enmod`和`a2dismod`命令:...

    Apache HTTP服务器2.0中文说明

    9. **URL重写**:mod_rewrite模块允许基于规则对URL进行动态转换,这对于实现SEO友好的URL结构,或者隐藏内部路径,提供动态内容静态化等功能非常有用。 10. **FastCGI支持**:Apache 2.0通过mod_fastcgi模块与...

    IIS服务器SSI(rewrite重写)插件的帮助资料

    它兼容Apache的mod_rewrite的语法,从而使仅仅复制.htaccess文件就把配置从appach移植到IIS中或者从IIS移值到appach中变成可能。请参阅3.2兼容性图表这一节。 运行IIS服务器SSI(rewrite重写)插件,可在windows的IIS...

    linux-Apache

    Apache支持多站点配置,即在一个服务器上托管多个独立的网站,这称为虚拟主机。可以通过定义不同的ServerName和DocumentRoot来实现。例如: ```apacheconf *:80&gt; ServerName example.com DocumentRoot /var/...

    apache web服务器 2.2.32

    Apache的mod_rewrite模块提供了URL重写功能,可以实现URL美化,隐藏真实路径,甚至实现动态URL到静态URL的转换。这对于搜索引擎优化(SEO)和提升用户体验非常有用。 **7. 性能优化** Apache提供了多种性能优化策略...

    优化dis

    - 确认mod_rewrite模块可用:在Apache的配置文件httpd.conf中,确保有加载mod_rewrite.so模块的代码,例如`LoadModule rewrite_module modules/mod_rewrite.so`。 - 在网站对应的配置区域添加规则。红色部分代表...

    如何在Ubuntu下启动Apache的Rewrite功能

    其中,`Mod_rewrite`模块是Apache的一个重要组件,它允许我们进行URL重写,这对于实现SEO优化、隐藏真实路径或者实现动态URL的静态化等场景非常有用。下面将详细介绍如何在Ubuntu下启动Apache的Rewrite功能。 首先...

    apache2.2文档.rar

    4. **URL重写**:通过mod_rewrite模块,可以实现复杂的URL规则重写,优化SEO和站点结构。 5. **虚拟主机**:Apache 2.2支持多个虚拟主机在同一服务器上运行,每个虚拟主机可以独立配置域名、文档根目录和访问控制。...

    Apache2中文手册

    用户还可以通过`/etc/apache2/sites-available`目录下的各个站点配置文件来管理不同的虚拟主机。 三、虚拟主机配置 Apache2支持多个虚拟主机,即在一个服务器上运行多个独立的网站。通过设置ServerName和...

    Apache HTTP Server Version 2.2 文档

    mod_rewrite模块是Apache的一个强大特性,它允许根据预定义的规则重写URL,这对于SEO优化和实现RESTful API至关重要。通过RewriteRule和RewriteCond指令,可以创建复杂的重写规则。 八、缓存机制 Apache 2.2支持mod...

    Apache的安装与配置-linux

    Apache有许多可选模块,如mod_rewrite用于URL重写,mod_ssl用于HTTPS支持。使用以下命令启用模块(以mod_rewrite为例): ```bash sudo a2enmod rewrite ``` 然后,确保在配置文件中包含必要的模块配置,如: ```...

    apache中文帮助文档

    8. **URL重写**:利用mod_rewrite模块实现URL美化,进行动态URL到静态URL的转换,或实现URL路由规则。 9. **错误处理**:理解错误页面的自定义,以及如何根据HTTP状态码返回不同的错误信息。 10. **脚本支持**:...

    Apache服务器实用大全

    - Apache模块介绍:讲解如何加载和卸载Apache模块,如mod_rewrite用于URL重写,mod_security用于安全防护,mod_deflate用于压缩响应内容等。 - 模块配置示例:提供各种模块的具体配置示例,帮助理解并实际应用。 ...

    ApacheServer系统管理员手册

    3. 模块配置:每个模块都有自己的配置指令,如mod_rewrite的RewriteRule。 五、日志管理 1. 错误日志:记录服务器运行时的错误信息,通常命名为error.log。 2. 访问日志:记录所有HTTP请求,常见格式有Common Log ...

    Apache2参考手册

    7. **URL重写**:mod_rewrite模块允许基于规则的URL转换,常用于SEO优化和内部路径隐藏。 8. **安全设置**:Apache2支持HTTPS通过mod_ssl,以及通过mod_security进行应用层防护,防止恶意攻击。 9. **性能调优**:...

Global site tag (gtag.js) - Google Analytics