在看租用服务器公司的“常见问题”时,经常会看到“我可以使用mod_rewrite吗?”这样的问题。
如果您是服务器初学者,则无需担心,但我想很多人都想知道它是什么。因此,这里我们将解释“mod_rewrite”及其配置文件“.htaccess”。
什么是 mod_rewrite
目前,租赁服务器行业的大多数操作系统都使用基于 Linux 或 Unix 的操作系统(部分服务使用 Windows 服务器)。在这个 Linux / 类 Unix 操作系统上运行的最典型的 Web 服务器称为 Apache。
而“mod_rewrite”就像是为这个 Apache 添加功能的一部分。“mod”部分是“module”的缩写,除了“mod_rewrite”之外,还有CGI执行所需的“mod_cgi”、显示服务器状态的“mod_status”等各种模块。
那么“mod_rewrite”起到什么作用呢?它是一个“重写”网站URL的模块。
最常见的用法是“http://example.com/新-contents.html ”当URL “http://example.com/老-contents.html”进行访问。它用于重定向处理,如跳至。
另外,近年来使用量不断增加的WordPress,可以通过设置永久链接结构来改变显示URL的方式,但这也是在后台使用“mod_rewrite”进行处理的。
换句话说,问题“我可以使用 mod_rewrite 吗?”与问题“我可以重定向或重写 URL 吗?”几乎相同的含义。 * 还有其他使用mod_rewrite的方法,但是在共享服务器的情况下,我认为从上面的角度来看没有问题。
什么是.htaccess
上面提到的“mod_rewrite”以文本格式描述了名为“httpd.conf”的文件中的实际设置。
但是,在多用户的共享服务器上,让用户直接设置“httpd.conf”是非常危险的。错误配置甚至可能导致服务器上的所有用户无法访问网站。
这就是使用名为“.htaccess”的文件的地方。这也是用于以文本格式描述重定向和 URL 重写设置,但它与 httpd.conf 有很大不同。
因为 .htaccess 仅适用于它所在的目录及其下方(子目录)。因此,如果是共享服务器,可以让其他用户编辑每个用户目录下的.htaccess,以免影响其他用户。
即使租用服务器端回答“可以使用mod_rewrite”,用户一般使用“.htaccess”进行设置(除非有VPS等root权限),是一个目标。