在 CentOS 系統中,配置 PHP 的 mod_rewrite 規則通常涉及以下幾個步驟:
啟用 Apache 的 mod_rewrite 模塊:
首先,確保 Apache 的 mod_rewrite 模塊已經啟用。你可以使用以下命令來啟用它:
sudo systemctl enable httpd
sudo systemctl start httpd
然后,啟用 mod_rewrite 模塊:
sudo a2enmod rewrite
最后,重啟 Apache 服務以應用更改:
sudo systemctl restart httpd
配置 .htaccess 文件:
在你的網站根目錄下創建或編輯 .htaccess 文件。這個文件用于定義 URL 重寫規則。以下是一個簡單的示例:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
這個示例規則的意思是:
index.php 文件,則直接訪問該文件。index.php。配置 Apache 虛擬主機:
如果你使用的是虛擬主機,確保在虛擬主機配置文件中允許使用 .htaccess 文件。編輯虛擬主機配置文件(通常位于 /etc/httpd/conf.d/ 或 /etc/httpd/conf.modules.d/ 目錄下),添加或修改以下配置:
<Directory "/var/www/html">
AllowOverride All
</Directory>
這個配置允許在 /var/www/html 目錄下的網站使用 .htaccess 文件。
重啟 Apache 服務: 最后,重啟 Apache 服務以應用所有更改:
sudo systemctl restart httpd
通過以上步驟,你應該能夠在 CentOS 系統中成功配置 PHP 的 mod_rewrite 規則。如果你遇到任何問題,請檢查 Apache 的錯誤日志以獲取更多信息。錯誤日志通常位于 /var/log/httpd/error_log。