簡體   English   中英

RewriteRule不起作用

[英]RewriteRule does not work

我想這樣匹配URL:

http://www.example.com/line/s3360

http://www.example.com/template.php?product=s3360

我像這樣通過RewriteRule做到這一點:

RewriteRule ^line/(.+)/?$ line/template.php?product=$1 [NC,L,QSA]

但是我不想重定向URL:

http://www.example.com/line/

相反,我想將此網址鏈接到

http://www.example.com/line/index.php

完整的htaccess文件:

ErrorDocument 400 /erreur.php?erreur=400
ErrorDocument 401 /erreur.php?erreur=401
ErrorDocument 402 /erreur.php?erreur=402
ErrorDocument 403 /erreur.php?erreur=403
ErrorDocument 404 /erreur.php?erreur=404
ErrorDocument 405 /erreur.php?erreur=405
ErrorDocument 500 /erreur.php?erreur=500
ErrorDocument 501 /erreur.php?erreur=501
ErrorDocument 502 /erreur.php?erreur=502
ErrorDocument 503 /erreur.php?erreur=503
ErrorDocument 504 /erreur.php?erreur=504
ErrorDocument 505 /erreur.php?erreur=505

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

#avoid problem with form
RewriteCond %{REQUEST_METHOD} POST
RewriteRule ^ - [L]

# remove index
RewriteRule (.*)index$ $1 [R=301]

## don't touch /forum URIs
RewriteRule ^forums/ - [L,NC]

# To externally redirect /dir/foo.php to /dir/foo

RewriteCond %{THE_REQUEST} line/.+
#RewriteCond %{THE_REQUEST} !line/ind
RewriteRule ^line/(.+)/?$ line/template.php?product=$1 [NC,L,QSA]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L]

# To internally forward /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*?)/?$ $1.php [L]

<Files 403.shtml>
order allow,deny
allow from all
</Files>

像這樣嘗試

RewriteRule ^line\/([a-z][0-9]{4,})\/?$ template.php?product=$1 [NC,L,QSA]

我不得不猜測,/ line / XXXXX之后可能會發生什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM