Apache模塊 mod_rewrite 提供了一個基于正則表達式分析器的重寫引擎來實時重寫URL請求。它支持每個完整規則可以擁有不限數量的子規則以及附加條件規則的靈活而且強大的URL操作機制。此URL操作可以依賴于各種測試,比如服務器變量、環境變量、HTTP頭、時間標記,甚至各種格式的用于匹配URL組成部分的查找數據庫。
此模塊可以操作URL的所有部分(包括路徑信息部分),在服務器級的(httpd.conf)和目錄級的(.htaccess)配置都有效,還可以生成最終請求字符串。此重寫操作的結果可以是內部子處理,也可以是外部請求的轉向,甚至還可以是內部代理處理。
#### RewriteCond 的規則以及參數說明。
RewriteCond指令定義了規則生效的條件,即在一個RewriteRule指令之前可以有一個或多個RewriteCond指令。條件之后的重寫規則僅在當前URI與Pattern匹配并且滿足此處的條件(TestString能夠與CondPattern匹配)時才會起作用
【說明 】定義重寫發生的條件
【語法】 RewriteCond TestString CondPattern [flags]
【作用域】 server config, virtual host, directory, .htaccess
【覆蓋項】 FileInfo
【狀態】 擴展(E)
【模塊】 mod_rewrite
RewriteEngine On
開啟 Apache Rewrite 模塊;
RewriteCond %{SCRIPT_FILENAME} !-f
如果所請求的文件未對應到相對于 Web 根目錄的某個文件,則使用重寫規則;
RewriteCond %{SCRIPT_FILENAME} !-d
如果請求不存在的目錄,則使用重寫規則;
RewriteRule ^/(.*)$ /index.php
如果滿足上述的兩個條件之一,則執行此條重寫規則;
RewriteCond 相當于 if 判斷,加入后面的匹配規則成立,就向下執行,重寫規則。
- 簡介
- Cookie
- HTML5 LocalStorage
- session
- 當瀏覽器關閉后,Session就銷毀了嗎?
- mysql數據庫保存session
- HTTP協議的由來
- fsockopen異步請求
- http防盜鏈
- Apache偽靜態知識補充
- 大并發量解決方案
- 大型網站是怎樣解決多用戶高并發訪問
- 網站高并發 大流量訪問的處理及解決方法
- 并發數與在線客戶數?注冊用戶數的關系
- 即時聊天程序
- 反向Ajax實現
- ob緩存作用
- 淺聊并發之戰
- php擴展安裝
- php安裝redis擴展
- SQLMap自動化實施SQL注入共計
- 命名空間namespace
- 集群和分布式之【session共享】
- php Redis存儲Session 【1】
- php Redis存儲Session 【2】
- php mysql存儲session【1】
- php緩存
- 文件緩存
- memcache和redis的比較
- 原生session與session in redis對比
- XSS攻擊【1】
- XSS攻擊【2】
- PHP消息隊列
- php+mysql 模擬發送郵件隊列
- php+mysql 模擬訂單處理隊列
- php+redis 模擬秒殺隊列
- RabbitMQ 消息隊列系統
- beanstalkd
- PHP構建即時通訊
- WebSocket協議
- workerman
- PHP變量的作用域
- PHP傳值和傳引用的區別
- PHP匿名函數
- PHP遞歸函數&應用
- PHP單例模式
- PHP性能優化
- RESTful
- 集群
- 增加pgsql擴展
- php.ini路徑查找
- Swoole Compiler
- mysql 主從
- 主從
- mysql-proxy
- window docker環境