2010-07-07 4 views
0

간단한 테스트 펄 스크립트 작업을 시도하는 중입니다.perl 스크립트가있는 .htaccess 두통?

~/public_html을/

  • htaccess로

~/public_html을/조회 권한 : "drwxrwxrwx 2 MyUserName 에다 공유 호스팅 서비스에/폴더 구조 다음과 같은 파일이 myusername "

  • .htaccess
  • ,
  • lookup.pl의 * 권한 "-rwxr-XR은-X MyUserName 에다 MyUserName 에다"

제의 .htaccess가 포함

# disable directory browsing 
Options All -Indexes 

RewriteEngine on 
RewriteBase/
RewriteRule ^(r)$ $1/ [R] 
RewriteRule ^(r)/(.*)(\.[a-z]+)$ redirect.php?$1 [L] 
RewriteRule ^(r)/(.*)$ redirect.php?$1 [L] 

번째의 .htaccess가 포함

RewriteEngine On 
RewriteBase /lookup 

RewriteCond %{REQUEST_URI} !^/lookup/lookup.pl [NC] 
RewriteCond %{REQUEST_URI} !\.(css|png|jpg|gif)$ [NC] 
RewriteRule ^(.*)$ lookup.pl/$1 [QSA,NC] 

그러나 www.mysite.com/lookup/lookup.pl에 대한 직접 액세스는 작동하지 않고 "500 내부 서버 오류"를 표시합니다.

+0

error_log가 lookup.pl 오류에 관해 알려주는 내용은 무엇입니까? – Prix

+0

[Wed Jul 07 TIME] [오류] [클라이언트 IPADDRESS] 파일이 존재하지 않습니다 : /home/myusername/public_html/500.shtml – RubiCon10

+0

게시 한 오류 로그 항목이 더 있습니까? 이 오류 메시지는 사용자 지정 오류 응답 페이지를 찾을 수 없음을 의미합니다. 오류 표시와 관련된 오류입니다. :-) – Mike

답변

0

귀하의 전체 구성을 잘 모르기 때문에 대략적인 추측 : suEXEC (VirtualHostUser 또는 Group 지시어가 포함되어 있음)로 사이트를 실행하고 있습니까?

이 경우 스크립트는 저장할 수있는 디렉토리가 world-writable이고 suEXEC은 마음에 들지 않으며 error_log에 오류 메시지가 표시되지 않으므로 스크립트를 실행할 수 없습니다 (Mike는 지적한대로 오류 메시지가 제공함) 실제 오류와 관련이 없지만 올바른 오류 페이지를 표시하는 오류). suexec_log에서는 대부분의 사람들이 일반적으로 참조하지 않습니다.

+0

안녕하세요 JOnas - 공유 호스팅 계정에 있습니다 ... – RubiCon10

+0

suEXEC에서 실행되는 경우는 공유 호스팅에서 CGI를 실행하기위한 기준이되기 때문에 가능합니다. 777 (rwxrwxrwx)에서 755 (rwxr-xr-x) 로의 "lookup"디렉토리의 사용 권한을 수정하십시오. – Jonas

+0

Shoot me ...이 두 줄은 실제로는 두 줄이기 때문에 오류가 발생했습니다.하지만 (LINE1) #!/usr/bin/perl은 CGI :: Carp qw (fatalsToBrowser)를 사용합니다. (LINE2) print "Content-type : text/html \ n \ n"; – RubiCon10