重写 - > .htaccess出现500内部错误

时间:2017-12-06 09:58:35

标签: apache .htaccess mod-rewrite url-rewriting internal-server-error

我为我的问题尝试了一切,但没有任何作用。

我不熟悉正则表达式,但我尽了最大努力。

以下是代码:

Options +FollowSymlinks

RewriteEngine on

RewriteRule ^series/([A-Z]+)?$ series.php?code=$1 [L,QSA,NC]
RewriteRule ^exercices/([A-Z]+)-([0-9]+)/([0-9]+)?$ exercices.php?code=$1&serie=$2&question=$3 [L,QSA,NC]

# Remove php extension
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^(.*)$ $1.php [L]

# Redirect to HTTPS
RewriteCond %{HTTPS} !=on
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# Redirect to 404 if url is not correct
RewriteCond %{THE_REQUEST} \s.+?\.php[\s?] [NC]
RewriteCond %{REQUEST_URI} !/index\.php [NC]
RewriteRule ^ https://www.test.com/404 [L]

# Errors
ErrorDocument 404 https://www.test.com/404
ErrorDocument 403 https://www.test.com/
ErrorDocument 500 https://www.test.com/

有了这个,我有一个漂亮的500内部错误...

我确实做了一些研究,但我仍然坚持。

是的,有人能帮帮我吗? (抱歉我的英语不好)

1 个答案:

答案 0 :(得分:1)

我刚刚添加了#34; /?"就在"之前 $ "签字,它的工作:

RewriteRule ^series/([A-Z]+)/?$ /series.php?code=$1 [L]
RewriteRule ^exercices/([A-Z]+)-([0-9]+)-([0-9]+)/?$ /exercices.php?code=$1&serie=$2&question=$3 [L]

我希望这对有同样问题的人有所帮助。

感谢。