📜  htaccess 重写规则 (1)

📅  最后修改于: 2023-12-03 15:01:09.573000             🧑  作者: Mango

.htaccess 重写规则

.htaccess 文件是一个 Apache Web 服务器的配置文件,它允许网站管理员将 Apache 服务器配置与特定目录相关联,以便更好地控制网站。其中一个重要功能是重写规则,它允许网站管理员在不实际更改 URL 地址的情况下更改其外观和行为。

以下是一些 .htaccess 重写规则的示例:

重定向到 HTTPS

如果您希望网站访问始终都是安全的,则可以将 HTTP 请求重定向到 HTTPS。这可以通过以下 .htaccess 代码片段来实现:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
隐藏 .php 扩展名

如果您不希望在 URL 中显示 .php 扩展名,则可以使用以下代码。例如,将 http://example.com/about.php 重写为 http://example.com/about:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^/]+)/?$ $1.php [L]
重定向旧网址

如果您需要将旧的网址重定向到新的网址,则可以使用 mod_rewrite 模块进行操作。例如,将 http://example.com/old-page.html 重定向到 http://example.com/new-page:

RewriteEngine On
Redirect 301 /old-page.html http://example.com/new-page
隐藏子目录

如果您希望从 URL 中隐藏子目录,则可以使用以下代码。例如,将 http://example.com/subdir/page.html 重写为 http://example.com/page.html:

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/subdir/
RewriteRule ^subdir/(.*)$ /$1 [L,R=301]