"No input file specified" sorunu yönlendirme

2 Cevap php

I'm working on a url shortner script. It's located at http://mini.ample.se/ and the short URL will look something like http://mini.ample.se/%5Babc..%5D

benim .httaccess dosyası gibi görünüyor

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteOptions MaxRedirects=1
   RewriteBase /
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteCond %{REQUEST_FILENAME} !-l
   RewriteRule ^([a-zA-Z0-9_-]+)$ redirect.php?alias=$1 [L]
</IfModule>

when I try it out with ex. mini.ample.se/a I get "No input file specified" error. I know it got something to do with the redirecting and not finding my redirect.php file but I'm not sure what.

redirect.php dosyası gibi görünüyor

$alias = trim(mysql_real_escape_string($_GET['alias']));

if (!preg_match("/^[a-zA-Z0-9_-]+$/", $alias)) {
  header("Location: ".SITE_URL, true, 301);
  exit();
}

if (($url = get_url($alias))) {
    header("Location: $url", true, 301);
    exit();
}

header("Location: ".SITE_URL, true, 301);

Teşekkürler!

2 Cevap

: Ben php dosya buldu ve onun bir hata geri tekme, ben senin rewrite bir durum olması gerekir düşünüyorum olmaz 'rewite' belli bir talebi olmadığını, bu bir 'dosya bulunamadı' konudur eminim

RewriteCond $1 !^(redirect\.php)

$1 being the value of course that is being passed.. just an example but I believe this is whats happening. Give it a try.

EDIT: Did a search, looks like this could help you: http://jenseng.com/archives/000035.html

mod_rewrite ayıklama birçok bilgi giriş yapabilirsiniz. Sadece log level artırmak ve a log file ayarlamak

RewriteLogLevel 9
RewriteLog logs/rewrite.log

baskılar mesela gibi bir şey

(3) [perdir D:/xampp/htdocs/so/rewrite/] strip per-dir prefix: D:/xampp/htdocs/so/rewrite/yadda -> yadda
(3) [perdir D:/xampp/htdocs/so/rewrite/] applying pattern '^([a-zA-Z0-9_-]+)$' to uri 'yadda'
(4) [perdir D:/xampp/htdocs/so/rewrite/] RewriteCond: input='D:/xampp/htdocs/so/rewrite/yadda' pattern='!-f' => matched
(4) [perdir D:/xampp/htdocs/so/rewrite/] RewriteCond: input='D:/xampp/htdocs/so/rewrite/yadda' pattern='!-d' => matched
(4) [perdir D:/xampp/htdocs/so/rewrite/] RewriteCond: input='D:/xampp/htdocs/so/rewrite/yadda' pattern='!-l' => matched
(2) [perdir D:/xampp/htdocs/so/rewrite/] rewrite 'yadda' -> 'redirect.php?alias=yadda'
(3) split uri=redirect.php?alias=yadda -> uri=redirect.php, args=alias=yadda
(3) [perdir D:/xampp/htdocs/so/rewrite/] add per-dir prefix: redirect.php -> D:/xampp/htdocs/so/rewrite/redirect.php
(2) [perdir D:/xampp/htdocs/so/rewrite/] trying to replace prefix D:/xampp/htdocs/so/rewrite/ with /
(5) strip matching prefix: D:/xampp/htdocs/so/rewrite/redirect.php -> redirect.php
(4) add subst prefix: redirect.php -> /redirect.php
(1) [perdir D:/xampp/htdocs/so/rewrite/] internal redirect with /redirect.php [INTERNAL REDIRECT]

Esp. senin günlüğüne (1) ... internal redirect hattında bir göz atın. O (çok ama) hemen hemen sunucuya yeni bir istek gibi, yani / gerçekten demektir yönlendirme var http://your-server/redirect.php