【发布时间】:2010-09-20 13:50:17
【问题描述】:
好的。所以我正在构建这个可以通过两个不同域访问的站点。所以我不能在我的 .htaccess 中使用 RewriteBase。我用来解决这个问题的规则(如下)似乎工作正常。但是,当我在具有干净 URL(WAMP)的本地机器上使用以下 .htaccess 设置时,它一切正常,但是当我在实时服务器(共享托管 LAMP)上使用它时,我导航到的每个页面都显示主页(我猜是索引下的一个),即使浏览器中的 URL 显然正在更新。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/domain1.com/(.*)$
RewriteRule ^(.*)$ /domain1.com/index.php?q=$1 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/domain2.com/(.*)$
RewriteRule ^(.*)$ /domain2.com/index.php?q=$1 [L,QSA]
</IfModule>
非常感谢任何帮助或想法。
- 卢克
【问题讨论】:
-
您是否验证过您的实时服务器上是否正确启用了 mod_rewrite?如果是这样,您是否已验证您的测试服务器和实时服务器之间的任何其他适用于 Apache 的设置是否相同?
-
您可能会意识到,考虑到本地机器是 windows 而服务器机器是 linux,检查这些设置是相当困难的。是的,我检查过。但你只能检查到一定程度和能力范围内。这就是这个论坛出现的地方......
标签: apache .htaccess clean-urls