你做.htaccess
的方式非常混乱。每个页面的规则都有一些缺点,其中最重要的是如果添加页面,则必须更新.htaccess
。另一个缺点是您不能简单地添加异常,因为您必须为每个规则添加异常。然而,有一件事我们可以做的是网页改写为自身,并告诉它不应该继续改写一旦这样做:
RewriteRule ^DuphilWork/(.*)$ DuphilWork/$1
RewriteRule ^$ /index.php
[..]
现在,这意味着你还必须写上网址测试网站无需重写。换句话说,他们必须是这样的:Duphil.com/DuphilWork/index.php?page=oilfield
。
如果你想写票友网址,在您的测试网站,以及与当前设置的唯一方法是在你的.htaccess
复制几乎所有的规则,并添加DuphilWork
的比赛模式,在一个重定向路径副本。
真正的解决办法当然有这样一条规则:
RewriteCondition !-f
RewriteRule ^(.*)$ /index.php?page=$1
然后确保正确的index.php解析该页面的字符串(现在包括确保该网页存在。它变得微不足道解决当前的问题,这种情况下,但我相信你应该能够使这项工作与我上面给的解决方案。
用我上面这涉及复制一切介绍的策略,你最终会带来一些事端摹这样的:
Options +FollowSymLinks
RewriteEngine on
RewriteBase/
ErrorDocument 404 /index.php?page=404
ErrorDocument 403 /index.php?page=403
RewriteRule ^DuphilWork/$ /DuphilWork/index.php
RewriteRule ^DuphilWork/about/$ /DuphilWork/index.php?page=about
RewriteRule ^DuphilWork/oilfield/$ /DuphilWork/index.php?page=oilfield
RewriteRule ^DuphilWork/pipeline/$ /DuphilWork/index.php?page=pipeline
RewriteRule ^DuphilWork/safety/$ /DuphilWork/index.php?page=safety
RewriteRule ^DuphilWork/sales/$ /DuphilWork/index.php?page=sales
RewriteRule ^DuphilWork/contact/$ /DuphilWork/index.php?page=contact
RewriteRule ^DuphilWork/stateLicensures/$ /DuphilWork/index.php?page=stateLicensures
RewriteRule ^DuphilWork/keyPersonnel/$ /DuphilWork/index.php?page=keyPersonnel
RewriteRule ^DuphilWork/projectListings/$ /DuphilWork/index.php?page=projectListings
RewriteRule ^DuphilWork/legal/$ /DuphilWork/index.php?page=legal
RewriteRule ^DuphilWork/techDivision/$ /DuphilWork/index.php?page=techDivision
RewriteRule ^DuphilWork/equipment/$ /DuphilWork/index.php?page=equipment
RewriteRule ^DuphilWork/projectImages/$ /DuphilWork/index.php?page=projectImages
RewriteRule ^DuphilWork/contact/(.*)/$ /DuphilWork/ index.php?page=contact&contactName=$1
RewriteRule ^$ /index.php
RewriteRule ^about/$ /index.php?page=about
RewriteRule ^oilfield/$ /index.php?page=oilfield
RewriteRule ^pipeline/$ /index.php?page=pipeline
RewriteRule ^safety/$ /index.php?page=safety
RewriteRule ^sales/$ /index.php?page=sales
RewriteRule ^contact/$ /index.php?page=contact
RewriteRule ^stateLicensures/$ /index.php?page=stateLicensures
RewriteRule ^keyPersonnel/$ /index.php?page=keyPersonnel
RewriteRule ^projectListings/$ /index.php?page=projectListings
RewriteRule ^legal/$ /index.php?page=legal
RewriteRule ^techDivision/$ /index.php?page=techDivision
RewriteRule ^equipment/$ /index.php?page=equipment
RewriteRule ^projectImages/$ /index.php?page=projectImages
RewriteRule ^contact/(.*)/$ /index.php?page=contact&contactName=$1
该编码的.htaccess做我的别人所以这就是为什么我不知道它是什么要做。我是否需要更改实时版本.htaccess中提到的代码或工作文件夹中的代码,或者我是否甚至需要工作文件夹中的代码?谢谢。 – BurtG
您的.htaccess应该位于您的脚本想要从*重定向*的目录中,因此这将成为现场版本中的一个。 – Jasper
我试过这些改变,没有任何工作,我认为主要是因为我不知道我在做什么。我可能不得不在我的PHP文件中尝试一些更改,而不是使用.htaccess。 – BurtG