簡體   English   中英

我的mod_rewrite規則無法解析PHP變量

[英]My mod_rewrite rules do not resolve PHP variables

我有一個有趣的情況。 我已經配置了基本的LAMP服務器,並且外部公司正在向我們提供一些代碼。 一切正常,除了專門重寫PHP。

我已經成功配置了重寫,並且可以進行基本的重寫,例如hello.html-> redir.html。 我還通過將LogLevel設置為trace6來確認了這一點,並且我看到重寫正在進行中。

麻煩來自php變量。 似乎只是無法解決它們。

我有以下簡化的.htaccess文件,其中刪除了所有其他規則以進行測試

<ifModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^news/(.*)/(.*)/(.*)/$ news.php?department=$1&newsid=$2&newstitle=$3 [L]
RewriteRule ^$ index.php?page=home [L]

</ifModule>

現在,如果我輸入我的URL http:// webserver / news / it / 153 / newsstory

我希望被重定向到

HTTP://webserver/news.php部門=它與NewSID的= 153&newstitle = newsstory?

但是,第二條規則抓住了它。

這對我來說很棘手,因為我正在提供服務器基礎結構,而不是編寫代碼(外部提供)。 我們的代碼供應商說它可以發揮自己的作用,並且我們已經看到了有效的演示,所以我一直在從“我們某種程度上缺少軟件包或配置”的角度對它進行故障排除。

據我可以在線告訴,如果mod_rewrite在工作,它應該...在工作。

錯誤的redir的日志轉儲

[perdir /var/www/itnews/] add path info postfix: /var/www/itnews/news.php -> /var/www/itnews/news.php/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/news.php/it/153/newsstory -> news.php/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'news.php/it/153/newsstory'
[perdir /var/www/itnews/] add path info postfix: /var/www/itnews/news.php -> /var/www/itnews/news.php/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/news.php/it/153/newsstory -> news.php/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'news.php/it/153/newsstory'
[perdir /var/www/itnews/] pass through /var/www/itnews/news.php
[perdir /var/www/itnews/] add path info postfix: /var/www/itnews/news.php -> /var/www/itnews/news.php/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/news.php/it/153/newsstory -> news.php/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'news.php/it/153/newsstory'
[perdir /var/www/itnews/] add path info postfix: /var/www/itnews/news.php -> /var/www/itnews/news.php/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/news.php/it/153/newsstory -> news.php/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'news.php/it/153/newsstory'
[perdir /var/www/itnews/] pass through /var/www/itnews/news.php
[perdir /var/www/itnews/] add path info postfix: /var/www/itnews/it -> /var/www/itnews/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/it/153/newsstory -> it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'it/153/newsstory'
[perdir /var/www/itnews/] add path info postfix: /var/www/itnews/it -> /var/www/itnews/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/it/153/newsstory -> it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'it/153/newsstory'
[perdir /var/www/itnews/] pass through /var/www/itnews/it
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/images/logo.jpg -> images/logo.jpg, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'images/logo.jpg', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/images/logo.jpg -> images/logo.jpg, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'images/logo.jpg', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/images/logo.jpg, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/css/bootstrap.min.css -> css/bootstrap.min.css, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'css/bootstrap.min.css', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/css/bootstrap.min.css -> css/bootstrap.min.css, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'css/bootstrap.min.css', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/css/bootstrap.min.css, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/css/style.css -> css/style.css, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'css/style.css', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/css/style.css -> css/style.css, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'css/style.css', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/css/style.css, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/js/bootstrap.min.js -> js/bootstrap.min.js, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'js/bootstrap.min.js', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/js/bootstrap.min.js -> js/bootstrap.min.js, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'js/bootstrap.min.js', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/js/bootstrap.min.js, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/css/prettyCheckable.css -> css/prettyCheckable.css, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'css/prettyCheckable.css', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/css/prettyCheckable.css -> css/prettyCheckable.css, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'css/prettyCheckable.css', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/css/prettyCheckable.css, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/js/jquery-1.11.0.min.js -> js/jquery-1.11.0.min.js, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'js/jquery-1.11.0.min.js', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/js/jquery-1.11.0.min.js -> js/jquery-1.11.0.min.js, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'js/jquery-1.11.0.min.js', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/js/jquery-1.11.0.min.js, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/plugins/timthumb.php -> plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'plugins/timthumb.php', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/plugins/timthumb.php, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/fonts/ocean_sans_std_book-webfont.woff -> fonts/ocean_sans_std_book-webfont.woff, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^news/(.*)/(.*)/(.*)$' to uri 'fonts/ocean_sans_std_book-webfont.woff', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/fonts/ocean_sans_std_book-webfont.woff -> fonts/ocean_sans_std_book-webfont.woff, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] applying pattern '^$' to uri 'fonts/ocean_sans_std_book-webfont.woff', referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] pass through /var/www/itnews/fonts/ocean_sans_std_book-webfont.woff, referer: http://webserver/news/it/153/newsstory
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/images/body-bg.jpg -> images/body-bg.jpg, referer: http://webserver/css/style.css?v=1.0.1
[perdir /var/www/itnews/] strip per-dir prefix: /var/www/itnews/images/body-bg.jpg -> images/body-bg.jpg, referer: http://webserver/css/style.css?v=1.0.1
[perdir /var/www/itnews/] applying pattern '^$' to uri 'images/body-bg.jpg', referer: http://webserver/css/style.css?v=1.0.1
[perdir /var/www/itnews/] pass through /var/www/itnews/images/body-bg.jpg, referer: http://webserver/css/style.css?v=1.0.1

相關文章:我剛剛瀏覽了所有可以找到的php頁面,並將錯誤日志記錄最大化。

我越來越

Notice: Undefined index: department in /var/www/itnews/news.php on line 15

Notice: Undefined index: newsid in /var/www/itnews/news.php on line 18

Notice: Undefined index: archive in /var/www/itnews/pages/news-archive.php on line 16

Notice: Undefined variable: page in /var/www/itnews/pages/news-archive.php on line 28

在主頁上。 我現在正在考慮php中的某些錯誤,並且重定向實際上失敗了,因為php本身無法解析其變量。

這可能嗎?

該URL http://webserver/news/it/153/newsstory由於末尾的/而與您的第一個規則不匹配。

# do not match
RewriteRule ^news/(.*)/(.*)/(.*)/$ news.php?department=$1&newsid=$2&newstitle=$3 [L]

# will match
RewriteRule ^news/(.*)/(.*)/(.*)$ news.php?department=$1&newsid=$2&newstitle=$3 [L]

您可以使用此工具調試.htaccess文件。

暫無
暫無

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

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