Apache服务器中的URL重写的配置和应用 来自 Clay的日记
1、关于Apache 2.x URL别名的说明和设置;
Apache 2.x 服务器中的URL别名规则的文档,它是通过rewrite模块来实现的。能过URL别名规则,我们能看到一个干净的URL,比如可以重写为类似静态网页的地址。比如 LinuxSir.Org 论坛中,每个帖子都有一个静态网页的地址。干净的URL,对于Google搜索引擎来说是极为受用的,能更快的收录。
这个重写,是通过Apache 2.x 内部实现的,只是表面上把Web应用程序的URL变的干净一点,原始的URL还是一样有效。
1.1 关于rewrite模块的调用;
Apache 2.x 中URL重写,是通过mod_rewrite.so 来实现的,所以您要查看您的Apache 是否已经被编译进去这个模块了,并且在Apache的配置文件httpd.conf 中已经调用了这个模块。在大多数主流发行版中,Apache 2.x 是把rewrite模块已经编入进去了。比如我用的是Slackware。Apache 2.x的配置文件,放在 /etc/httpd 目录下。
在 httpd.conf 中,我们会发现类似如下的一行,是有关rewrite模块的,模块名是 mod_rewrite.so 。
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
或
LoadModule rewrite_module lib/apache2/modules/mod_rewrite.so
如果前面有#号,您要去掉。对于大多数发行版来说,Apache 2的模块一般是位于如下的两个位置
/usr/lib/apache2/modules
或
/usr/lib/httpd/modules
如果在httpd中打开调用rewrite_module的设置,查看一下是不是能调用了,要通过 httpd -M的参数来查看;
#/usr/sbin/httpd -M
如果发现有如下一行,说明模块已经能被调用了
rewrite_module (shared)
1.2 设置DocumentRoot的Directory;
在Apache 2.x 中,我们会看到 DocumentRoot设置的一行。这行就是存放网页程序的地方。比如LinuxSir.Org 存放在 /opt/www 目录中。那么我们就要设置 DocumentRoot为如下的。
DocumentRoot "/opt/www"
然后我们再还要对 DocumentRoot做针对性的行为设置。在一般的情况下,httpd.conf 会给一个默认的。如果你要改 DocumentRoot的路径,同时也要改针对DocumentRoot的Directory的设置,也就是
比如我们把DocumentRoot的路径改为了 "/opt/www",那我们也要把 DocumentRoot做针对性的行为设置也要改成这个路径。
Options FollowSymLinks
#AllowOverride None 注:把这行前面加#号,然后加下面的一行 ,也就是 AllowOverride ALL
AllowOverride ALL
Order allow,deny
Allow from all
我们把AllowOverride 的参数设置为ALL,表示整台服务器上的,都支持URL规则重写。Apache 服务器要读每个网站下的家目录下的 .htaccess 文件。如果没有这个文件,或者这个文档没有定义任何关于URL重写的规则,则不会有任何效果。在一般的情况下,成熟的Web 服务器应用套件,都支持URL重写的,比如drupal和joomla 。当我们用这些程序时,会发现在安装包中有 .htaccess中有这个文件。我们把Apache配置好后,只是需要在这些程序的后台打开此功能就行了。
1.3 重启httpd服务器;
在一般情况下,在各个发行版中,都有httpd服务器启动脚本,比如
# /etc/rc.d/rc.httpd restart 注:Slackware Linux
# /etc/init.d/apache2 restart 注:ubuntu、Debian 等;
# /etc/init.d/httpd start 注:Fedora 、Redhat、CentOS
分享到:
相关推荐
在ThinkPHP框架中,实现URL重写主要依赖于Apache服务器上的`.htaccess`文件配置。首先,确保服务器支持URL重写功能,即在`httpd.conf`文件中启用`mod_rewrite.so`模块,并且设置`AllowOverride`为`All`。 1. **启用...
本主题将深入探讨Apache服务器的配置与管理,帮助你掌握如何搭建和优化Web服务。 1. Web服务概述 Web服务是互联网的核心组成部分,它允许通过HTTP或HTTPS协议在客户端(如浏览器)和服务器之间交换数据。Web服务器...
URL重写指南 - Apache HTTP服务器.mht
在OpenCms中,这通常通过配置Apache Tomcat服务器或者使用内建的URL重写机制实现。Apache Tomcat是一个流行的Java应用服务器,用于运行基于Java Servlet和JavaServer Pages(JSP)的应用。 要实现"除去两个opencms...
ApacheHTTP服务器的URL重写规则与RewriteModule教程.docx
首先,Apache服务器是广泛使用的开源HTTP服务器,它的URL重写功能主要依赖于`.htaccess`文件。`.htaccess`文件允许我们在网站的根目录或特定目录下定义规则,实现URL的转换。例如,在描述中提到的某些目录不重写的...
### URL重写概念和例子 #### 一、URL重写定义与作用 **URL重写**(Uniform Resource Locator Rewriting),是指在服务器端对原始的URL请求进行转换,使其变为另一种形式,以便更好地满足网站设计的需求。这种转换既...
5. URL重写:掌握Apache服务器中的mod_rewrite模块的使用,通过定义适当的规则实现URL的重定向和重写,从而改善搜索引擎优化(SEO)和用户访问体验。 6. 静态与动态内容处理:了解Apache如何处理静态文件(如HTML、...
如果你的服务器环境支持ISAPI_Rewrite的话,可以配置httpd.ini文件 httpd.ini在url_rewrite文件夹下 高版本的IIS可以配置web.Config,配置rewrite节点 内容见url_rewrite文件夹下的web.Config --------------------...
Apache服务器配置全攻略 ...总的来说,Apache服务器配置涉及多个层面,理解并熟练运用这些知识点,将使你能够灵活地管理和优化服务器,为用户提供高效、安全的服务。不断学习和实践,你将成为Apache服务器配置的专家。
URL(统一资源定位符)是互联网上每个资源的唯一地址,而URL重写则是通过服务器配置或者应用程序代码来改变用户在浏览器地址栏中看到的URL,但并不改变实际请求的资源位置。这一技术常用于隐藏复杂的查询字符串,使...
URL重写主要基于服务器端的配置或应用程序处理。当用户通过浏览器输入一个经过重写的URL时,服务器会通过特定规则将这个友好的URL解析为实际处理请求的URL,然后进行相应的服务响应。这一过程通常涉及到HTTP服务器的...
`.htaccess` 文件是一个用于控制 Apache 服务器目录访问的配置文件,它可以用来实现 URL 重写规则。 `class.cleanurl.php` 可能定义了一个名为 `CleanUrl` 的类,该类包含方法用于解析和生成重写后的 URL。这个类...
1. **服务器配置**:大多数Web服务器(如Apache、IIS)都支持URL重写模块,通过配置规则文件(如Apache的`.htaccess`或IIS的`web.config`)来实现URL转换。 2. **框架内置支持**:许多Web框架(如ASP.NET MVC、Ruby...
在详细说明标题和描述中的知识点之前,首先需澄清给定文件内容似乎存在冗余的重复链接,这些链接指向同一内容,并未提供有关Apache服务器配置与使用的具体信息。因此,将无法直接从这部分内容中提炼知识点,只得依据...
URL重写是Web开发中的一种技术,主要用于优化和管理网站的URL结构,使其更符合搜索引擎优化(SEO)标准,提高用户体验,并便于服务器管理和应用程序处理。这个技术主要涉及到服务器配置、HTTP请求处理以及URL路径与...
IIS URL重写模块就是这样一个关键工具,它允许管理员通过规则配置来实现动态URL到静态URL的转换,从而改善网站性能和用户访问体验。 **一、IIS URL重写模块的功能** 1. **URL规范化**:避免由于URL拼写错误或多种...
Apache的URL重写规则是Apache HTTP服务器中一个强大的功能,它允许管理员或开发者通过修改URL...了解并熟练使用这些标志和规则,可以帮助我们更灵活地控制Apache服务器如何处理URL请求,从而优化网站性能和用户体验。
1. 使用Apache的mod_rewrite模块:在Apache服务器中,通过.htaccess文件配置规则,将请求的动态URL重定向到对应的静态URL。例如: ```RewriteRule ^article/(\d+).html$ article.jsp?id=$1 [L]``` 2. 使用Tomcat的...
在Linux环境下,Apache服务器的URL重写功能是一个强大的工具,它允许您将复杂的URL转换为更简洁、用户友好的格式,提高网站的可访问性和SEO优化。Apache的URL重写功能是通过`mod_rewrite`模块实现的。以下是开启...