[英]httpd.conf configured mod_rewrite don't work correctly
首先,我在互聯網上搜索了此內容(包括stackoverflow),但沒有找到任何解決方案。
我配置了httpd.conf:
LoadModule rewrite_module modules/mod_rewrite.so
AllowOverride All
我使用以下代碼將.htaccess放入htdocs
目錄中:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^apresentacao/?$ /apresentacao.php [NC,L]
RewriteRule ^consultoria/?$ /consultoria.php [NC,L]
RewriteRule ^software+escolar/gestao+escolar/?$ /escolar.php [NC,L]
</IfModule>
.htaccess
我在做什么錯?
編輯。
我嘗試訪問以下URL: www.mydomain.com/software+escolar/gestao+escolar/
,它不起作用。
我需要使用字符+(加號)分隔網址的名稱。
我仍然無法訪問放在.htaccess
中的任何頁面。
我只會回答問題部分,其中您提供了足夠的詳細信息:
RewriteRule ^software+escolar/gestao+escolar/?$ /escolar.php [NC,L]
盡管您的輸入URL可能使用+
或%20
表示空格,但RewriteRule會看到實際的虛擬路徑名。 那是mod_rewrite
應該匹配那里的文字空間。 正則表達式中的+
仍將是一個量詞。
因此,您應該使用的是:
RewriteRule ^software\sescolar/gestao\sescolar/?$ ...
甚至只是一個轉義的空間\\␣
代替那里的\\s
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.