簡體   English   中英

htaccess和mod_rewrite重定向錯誤

[英]htaccess and mod_rewrite redirect error

在ubuntu 13.04,apache2和php 5.4上我收到404錯誤。 我的機器上啟用了mod rewrite

我的.htaccess代碼如下:

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule ^/dl/([0-9]+)/$ dl.php?id=$1
</IfModule>

並將dl.php設置為僅回顯變量:

<?php
print_r($_GET);
?>

在輸出上,當我將轉到此地址http://localhost/digidoc/dl/5它顯示404錯誤

ps:digidoc文件夾和digidoc文件夾中包含的.htaccess文件位於Web服務器根目錄中

更改

RewriteRule ^/dl/([0-9]+)/$ dl.php?id=$1

RewriteRule ^/digidoc/dl/([0-9]+)/?$ dl.php?id=$1

注意?,因此最后一個斜杠是可選的。 還要添加digidoc/因為該規則將應用於整個URL。

您需要擺脫領先的斜杠:

Options -Multiviews

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /digidoc/
    RewriteRule ^dl/([0-9]+)$ dl.php?id=$1 [L,QSA]
</IfModule>

您還應該包括一個重寫基礎,並確保您已關閉多視圖。

暫無
暫無

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

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