我有以下.htaccess文件。
I have the following .htaccess file.
ErrorDocument 404 /404.php RewriteRule ^aanbiedinginformatie$ aanbiedinginformatie.php RewriteRule ^algemenevoorwaarden$ algemenevoorwaarden.php RewriteRule ^contact$ contact.php RewriteRule ^disclaimer$ disclaimer.php RewriteRule ^faq$ faq.php RewriteRule ^index$ index.php RewriteRule ^informatie$ informatie.php RewriteRule ^inloggen-bedrijven$ inloggen-bedrijven.php RewriteRule ^inloggen-consument$ inloggen-consument.php RewriteRule ^nieuws$ nieuws.php RewriteRule ^(.*)-nieuws$ bekijknieuws.php?id=$1 RewriteRule ^(.*)-(.*)-persbericht$ persbericht.php?id=$1&bedrijf=$2 RewriteRule ^persberichteninformatie$ persberichteninformatie.php RewriteRule ^privacy$ privacy.php RewriteRule ^registreren-bedrijven$ registreren-bedrijven.php RewriteRule ^registreren-bedrijven-stap-2$ registreren-bedrijven-stap-2.php RewriteRule ^registreren-bedrijven-stap-3$ registreren-bedrijven-stap-3.php RewriteRule ^registreren-bedrijven-stap-4$ registreren-bedrijven-stap-4.php RewriteRule ^registreren-bedrijven-stap-5$ registreren-bedrijven-stap-5.php RewriteRule ^registreren-consument$ registreren-consument.php RewriteRule ^vacatureinformatie$ vacatureinformatie.php RewriteRule ^(.*)-vacatures$ vacatures.php?id=$1 RewriteRule ^zoeken-op-(.*)$ zoeken.php?query=$1 RewriteRule ^zoeken-in-(.*)$ zoeken.php?plaats=$1 RewriteRule ^zoeken-q-(.*)-in-(.*)$ zoeken.php?query=$1&plaats=$2 RewriteRule ^(.*)-vacatures-zoeken$ zoekenvac.php?query=$1 RewriteRule ^(.*)-in-(.*)-vacatures$ zoekenvac.php?query=$1&plaats=$2 RewriteRule ^vacatures-in-(.*)$ zoekenvac.php?plaats=$1 RewriteRule ^(.*)-aanbiedingen$ zoekenaan.php?query=$1 RewriteRule ^(.*)-aanbiedingen-in-(.*)$ zoekenaan.php?query=$1&plaats=$2 RewriteRule ^aanbiedingen-in-(.*)$ zoekenaan.php?plaats=$1 RewriteRule ^(.*)-persberichten$ zoekenpers.php?query=$1 RewriteRule ^persberichten-in-(.*)$ zoekenpers.php?plaats=$1 RewriteRule ^(.*)-persberichten-in-(.*)$ zoekenpers.php?query=$1&plaats=$2 RewriteRule ^bedrijven-in-(.*)$ zoeken.php?plaats=$1 RewriteRule ^control/consument$ control/consument.php RewriteRule ^control/consument-mijngegevens$ control/consument-mijngegevens.php RewriteRule ^control/consument-wachtwoord$ control/consument-wachtwoord.php RewriteRule ^control/consument-cv$ control/consument-cv.php RewriteRule ^control/consument-reacties$ control/consument-reacties.php RewriteRule ^control/consument-reviews$ control/consument-reviews.php RewriteRule ^control/logout$ control/logout.php RewriteRule ^control/bedrijven$ control/bedrijven.php RewriteRule ^control/bedrijven-aanbieding$ control/bedrijven-aanbieding.php RewriteRule ^control/bedrijven-facturen$ control/bedrijven-facturen.php RewriteRule ^control/bedrijven-fotos$ control/bedrijven-fotos.php RewriteRule ^control/bedrijven-kortingscode$ control/bedrijven-kortingscode.php RewriteRule ^control/bedrijven-kortingscode-bewerken-(.*)$ control/bedrijven- kortingscode-bewerken.php?id=$1 RewriteRule ^control/bedrijven-kortingscode-verwijderen-(.*)$ control/bedrijven- kortingscode-verwijderen.php?id=$1 RewriteRule ^control/bedrijven-wachtwoord$ control/bedrijven-wachtwoord.php RewriteRule ^control/bedrijven-pakket$ control/bedrijven-pakket.php RewriteRule ^control/bedrijven-persbericht$ control/bedrijven-persbericht.php RewriteRule ^control/bedrijven-persbericht-bewerken-(.*)$ control/bedrijven- persbericht-bewerken.php?id=$1 RewriteRule ^control/bedrijven-persbericht-verwijderen-(.*)$ control/bedrijven- persbericht-verwijderen.php?id=$1 RewriteRule ^control/bedrijven-profiel$ control/bedrijven-profiel.php RewriteRule ^control/bedrijven-vacatures$ control/bedrijven-vacatures.php RewriteRule ^control/bedrijven-vacatures-bekijk-(.*)$ control/bedrijven-vacatures- bekijk.php?id=$1 RewriteRule ^control/bedrijven-vacatures-bewerken-(.*)$ control/bedrijven-vacatures- bewerken.php?id=$1 RewriteRule ^control/bedrijven-vacatures-verwijderen-(.*)$ control/bedrijven-vacatures-verwijderen.php?id=$1 RewriteRule ^control/logoutb$ control/logoutb.php RewriteRule ^(.*)$ bedrijf.php?q=$1 [L] RewriteRule ^id(.*)-(.*)$ bedrijf.php?id=$1 RewriteRule ^branche(.*)-(.*)$ zoekenbranche.php?id=$1
我要的,是所有的URL,除了上面提供的人会重定向到 bedrijf.php?Q = $ 1 。我试图排除,但不起作用。
What I want, is that all URL's except the one provided above will redirect to bedrijf.php?q=$1. I tried excluding but that doesn't work.
所以www.site/companyname会重定向到bedrijf.php?Q =公司名称,而www.site/contact重定向到contact.php
So www.site/companyname will redirect to bedrijf.php?q=companyname, while www.site/contact will redirect to contact.php
我将如何做到这一点?
推荐答案重写规则循环。整个一套规则继续得到重新应用到URI,直到URI停止变化。您的规则在这里:
Rewrite rules loop. The entire set of rules keep getting re-applied to the URI until the URI stops changing. Your rule here:
RewriteRule ^(.*)$ bedrijf.php?q=$1 [L]
有没有条件prevent一个previously改写URI的人不重写 bedrijf.php ,因为(。*) 匹配的一切。
Has no conditions to prevent a previously rewritten URI from getting rewritten to bedrijf.php, since (.*) matches everything.
尝试加入一些情况吧,如:
Try adding some conditions to it, like:
RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ bedrijf.php?q=$1 [L]
或
RewriteCond %{ENV:REDIRECT_STATUS} !200 RewriteRule ^(.*)$ bedrijf.php?q=$1 [L]更多推荐
的.htaccess规则重定向除了少数的人提供所有页面
发布评论