I have an htaccess (apache) file that has the following rules :
RewriteEngine on
RewriteRule questionnaire/login questionnaire/login.php
RewriteRule questionnaire/logout questionnaire/logout.php
RewriteRule questionnaire/account questionnaire/account.php
RewriteRule questionnaire/reopen/id/[(^/]+)$ questionnaire/reopen_questionnaire.php?id=$1 [L]
RewriteRule questionnaire/register questionnaire/register.php
RewriteRule questionnaire/registration questionnaire/registration.php
When I run my site it gives me the following error : The server encountered an internal error or misconfiguration and was unable to complete your request.
When I remove this line : RewriteRule questionnaire/reopen/id/[(^/]+)$ questionnaire/reopen_questionnaire.php?id=$1 [L]
it works fine, can someone tell me why please?
You're not nesting your code properly:
RewriteRule questionnaire/reopen/id/[(^/]+)$ questionnaire/reopen_questionnaire.php?id=$1 [L]
Should be:
RewriteRule questionnaire/reopen/id/([^/]+)$ questionnaire/reopen_questionnaire.php?id=$1 [L]
Problem is around the brackts -> "( )"
尝试更改为:
RewriteRule questionnaire/reopen/id/([A-Za-z0-9-]+)/?$ questionnaire/reopen_questionnaire.php?id=$1 [L]
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.