首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

APMServ Apache Rewrite 規則配置實戰:虛擬主機重寫示例

     編輯:PHP 綜合知識

配置文件位置

httpd.conf 中手動編輯虛擬主機區塊。

實戰示例:根路徑重定向到 phpinfo.php

# APMServ 默認虛擬主機
NameVirtualHost *:80
<VirtualHost *:80>
    ServerName *
    DocumentRoot "D:/APMServ5.2.6/www/htdocs"
    
    RewriteEngine On
    RewriteRule ^/$ /phpinfo.php [R=301]
    
    <Directory "D:/APMServ5.2.6/www/htdocs">
        Options FollowSymLinks IncludesNOEXEC Indexes
        DirectoryIndex index.html index.htm default.htm index.php default.php index.cgi default.cgi index.pl default.pl index.shtml
        AllowOverride None
        Order Deny,Allow
        Allow from all
    </Directory>
</VirtualHost>

關鍵指令解析

指令作用
RewriteEngine On啟用重寫引擎
RewriteRule ^/$ /phpinfo.php [R=301]匹配根路徑 /,301 永久重定向到 /phpinfo.php
[R=301]HTTP 301 狀態碼,利於 SEO 權重傳遞

常用重寫規則模板

# 隱藏 index.php (ThinkPHP/CodeIgniter 風格)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]

# 強制 HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# 防盜鏈
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [F,NC]

修改後重啟 Apache 生效。建議在 <Directory> 中設置 AllowOverride All 並改用 .htaccess 管理項目級規則,避免頻繁編輯主配置。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved