阅读量:28
在Ubuntu上,Apache2支持URL重写主要依赖于mod_rewrite模块。要启用和使用URL重写,请按照以下步骤操作:
-
确保已安装Apache2: 如果尚未安装Apache2,请打开终端并运行以下命令:
sudo apt update sudo apt install apache2 -
启用
mod_rewrite模块: 在终端中运行以下命令以启用mod_rewrite模块:sudo a2enmod rewrite -
配置Apache2以允许URL重写: 编辑Apache2的配置文件。通常,该文件位于
/etc/apache2/sites-available/000-default.conf。使用文本编辑器打开它,例如:sudo nano /etc/apache2/sites-available/000-default.conf在
部分中,找到AllowOverride指令并将其值更改为All。例如:Options Indexes FollowSymLinks AllowOverride All Require all granted 这将允许
.htaccess文件中的重写规则生效。 -
重启Apache2服务: 保存更改并退出文本编辑器。然后,在终端中运行以下命令以重启Apache2服务:
sudo systemctl restart apache2 -
创建或编辑
.htaccess文件: 在您希望应用URL重写的目录中创建一个名为.htaccess的文件。例如,如果您希望对网站根目录应用重写规则,请导航到/var/www/html并创建一个.htaccess文件:cd /var/www/html sudo nano .htaccess在
.htaccess文件中,添加您的重写规则。例如,以下规则将所有请求重定向到index.php文件:RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L]保存并关闭文件。
现在,Apache2已配置为支持URL重写。请确保您的重写规则符合您的需求,并根据需要进行调整。