簡體   English   中英

httpd.conf配置為mod_rewrite不能正常工作

[英]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.

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