簡體   English   中英

重寫動態URL無效(htaccess)

[英]Rewriting dynamic URLS not working (htaccess)

我知道這是一個經常被問到的問題,我已經看過他們所有人都嘗試了許多不同的變體,但都行不通,而且我不知道我在做什么錯。 我很久以前創建了一個.htaccess文件,以使其指向我的404錯誤頁面,這對我來說還算不錯,但是由於有很多帖子並且它變得凌亂,我現在想重寫我網站上的網址網址中的所有變量。 我有一個名為viewpost.php的頁面,該頁面傳遞了1個變量(還有其他頁面,但這只是示例)viewpost被傳遞了1個變量,因此它變為/viewpost.php?ID=10

RewriteEngine on
RewriteRule viewpost-ID-(.*)\.htm$ viewpost.php?ID=$1   

我將這兩行添加到htaccess文件中。 我嘗試從文件中刪除404代碼並將其保存,但也沒有使其工作。 除了將此代碼添加到.htaccess文件之外,我還需要做其他事情嗎? 該網站目前托管在atspace

Hosting OS  Proprietary *nix
Perl version    5.8.4
MySQL version    5.1
Perl path   /usr/bin/perl
Sendmail path   /usr/local/bin/sendmail
CGI-BIN path    not required    (You can run CGI, Perl scripts from any domain/subdomain folder)
Perl Modules    2900+ installed modules    (Click here to view the full list)
PHP Version  5.2.17 Change
PHP.INI Edit
PHP Info    [View PHP5.2.17 Info] [View PHP5.3.6 Info]
Directory Protection     Enabled  

這就是在主機設置頁面上寫的內容。 即時通訊不知道要重寫網址需要什么,但由於.htaccess文件當前適用於我的404頁,即時通訊假定設置正確?

.htaccess文件中的某些其他規則可能會覆蓋您的規則,或者您可能遇到區分大小寫的問題。 RewriteRule行的末尾添加[NC,QSA,L]

RewriteEngine On
RewriteRule viewpost-ID-(.*)\.htm /viewpost.php?ID=$1 [NC,QSA,L]

NC忽略了這種情況, QSA在目標URL后面附加了任何額外的查詢字符串參數,並且L告訴Apache如果與當前URL匹配,則停止處理更多RewriteRule條目。

暫無
暫無

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

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