mod_rewrite
処理の順序
ネタはここから。
リクエスト:
/xyz/oldstuff.html
内部処理:
/xyz/oldstuff.html -> /abc/def/oldstuff.html (per-server Alias) /abc/def/oldstuff.html -> /abc/def/newstuff.html (per-dir RewriteRule) /abc/def/newstuff.html -> /xyz/newstuff.html (per-dir RewriteBase) /xyz/newstuff.html -> /abc/def/newstuff.html (per-server Alias)
処理結果:
/abc/def/newstuff.html
基本作法
基準となるディレクトリの設定方法(RewriteBase)
- ベースディレクトリの設定の末尾に、スラッシュは不要。
RewriteBase /www/michael --- OK RewriteBase /www/michael/ --- NG
- パターン1
- エイリアスを設定したフォルダ:/home/アカウント名/www/folder111/folder222
- スクリプトからみたルートフォルダ:/home/アカウント名/www/folder111/folder222
RewriteBase /
- パターン2
- エイリアスを設定したフォルダ:/home/アカウント名/www/folder111
- スクリプトからみたルートフォルダ:/home/アカウント名/www/folder111/folder222
RewriteBase /folder222
- パターン3
- エイリアスを設定したフォルダ:/home/アカウント名/www
- スクリプトからみたルートフォルダ:/home/アカウント名/www/folder111/folder222
RewriteBase /folder111/folder222