`mod_rewrite` 是 Apache HTTP 服务器的一个模块,用于处理 URL 重写,允许服务器根据特定的规则修改请求的 URL,从而实现诸如隐藏目录、重定向、SEO 友好的 URL 等功能。
以下是开启 `mod_rewrite` 的步骤:
对于 Apache 服务器:
1. 检查 `mod_rewrite` 是否已安装:
打开终端或命令提示符,输入以下命令检查 `mod_rewrite` 是否已安装:
```bash
apachectl -M grep rewrite_module
```
如果输出中包含 `rewrite_module`,则表示模块已安装。
2. 开启 `mod_rewrite`:
编辑 Apache 的配置文件,通常是 `/etc/apache2/apache2.conf` 或 `/etc/httpd/httpd.conf`。
在配置文件中找到 `LoadModule` 指令,确保它包含了 `mod_rewrite.so`:
```apache
LoadModule rewrite_module modules/mod_rewrite.so
```
如果这一行不存在,则需要添加它。
3. 启用重写功能:
在配置文件中找到并取消注释或添加以下行:
```apache
RewriteEngine On
```
这将开启 URL 重写功能。
4. 保存并重新启动 Apache:
保存配置文件,然后重启 Apache 以应用更改:
```bash
sudo systemctl restart apache2
```
(对于基于 Debian 的系统)或
```bash
sudo service httpd restart
```
(对于基于 Red Hat 的系统)
对于 Nginx 服务器:
1. 检查 `ngx_http_rewrite_module` 是否已安装:
编辑 Nginx 的配置文件,通常是 `/etc/nginx/nginx.conf`。
在 `http` 块中找到并确保以下行存在:
```nginx
load_module modules/ngx_http_rewrite_module.so;
```
如果这一行不存在,则需要添加它。
2. 启用重写功能:
在 `server` 块中,添加或修改以下行以启用重写:
```nginx
rewrite_engine on;
```
如果需要,还可以添加重写规则。
3. 保存并重新加载 Nginx:
保存配置文件,然后重新加载 Nginx 以应用更改:
```bash
sudo systemctl reload nginx
```
完成以上步骤后,`mod_rewrite` 应该已经在您的服务器上开启并可以使用了。请确保在实施任何更改后测试您的网站以确保一切按预期工作。