Gra*_*ton 10 mod-rewrite rewrite apache-2.2
我有复杂的RewriteCond和RewriteRule在一台机器上。并且根据这些规则,一些请求将被重定向到另一台机器。
那么是否有任何 Apache 日志清楚地显示重定向是如何发生的?因为重定向的发生方式出乎我的意料。
Gra*_*ton 10
对于初学者,这就是你应该如何编写 *.conf 文件:
NameVirtualHost *:80
<VirtualHost *:80 >
ServerName gw.myserver.net
DocumentRoot "C:\Program Files\MyCompany\myserver\Web"
DirectoryIndex index.html index.php
RewriteLog "logs\rewritelog.txt"
RewriteLogLevel 3
<Directory "C:\Program Files\ MyCompany\ myserver\Web">
AddDefaultCharset UTF-8
Order Deny,Allow
Allow from all
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^gw\. myserver\.net$
RewriteRule !^(login|index.php) http://pmmenu. myserver\.net%{REQUEST_URI}$1 [L,R=301]
# we check if the .html version is here (caching)
RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
# no, so we redirect to our front web controller
RewriteRule ^(.*)$ index.php [QSA,L]
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
您需要在虚拟主机或服务器配置中启用重写日志
RewriteLog "/usr/local/var/apache/logs/rewrite.log"
见http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritelog
| 归档时间: |
|
| 查看次数: |
23371 次 |
| 最近记录: |