0
아래에 현재 개발중인 사이트에 현재 사용중인 vHost 항목이 있습니다. 이 vHost 항목은 로컬 컴퓨터에있을 때 제대로 작동하지만 동일한 vHost 레코드를 실행하는 준비 서버에 코드를 푸시하면 500 개의 내부 서버 오류가 발생합니다.vHost RewriteRule이 500 오류를 생성 중입니다.
이 vHost를 실행중인 컴퓨터에서 Apache 2.2.9 (Debian)가 실행 중입니다. 당신이 제공 할 수있는 어떤 도움
<VirtualHost 206.217.196.61:80>
SuExecUserGroup 13labs 13labs
ServerAdmin [email protected]
ServerName admin.13labs.net
ServerAlias admin.13labs.net
DirectoryIndex index.php
DocumentRoot /var/www/13labs.net/html/admin/
ErrorLog /var/www/13labs.net/logs/error.log
# Hide .svn Directories
<DirectoryMatch "\.svn">
Order deny,allow
deny from all
</DirectoryMatch>
# FastCGI
Alias /fcgi-bin/ /var/www/13labs.net/fcgi-bin/
AddHandler php-fastcgi .php
AddType application/x-httpd-php .php
Action php-fastcgi /fcgi-bin/admin-php.fcgi
<Directory /var/www/13labs.net/fcgi-bin/>
SetHandler fcgid-script
AllowOverride None
Options -Indexes +ExecCGI -FollowSymlinks -SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
<Directory /var/www/13labs.net/html/admin/>
AllowOverride None
Options -Indexes -FollowSymlinks -SymLinksIfOwnerMatch
FileETag All
</Directory>
# Rewrite Logic
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !\.(gif|jpe?g|png|js|css|swf|php|ico|txt|pdf)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^/(.+)$ /index.php/$1 [PT,QSA,L]
는
감사합니다. PHP에서 다음
RewriteRule ^.*$ /index.php$1 [PT,QSA,L]
내가 $ _SERVER를 [이용해야합니다 : 많은 시행 착오 후
안부,
앤드류
더 조사해 보니, 물리적으로 RewriteRule을 정의하면 작동하지만 규칙을 무시하는 것은 실패합니다. 예를 들어, "RewriteRule ^/user/login $ /index.php/user/login [PT, QSA, L]"하지만 작동하지 않습니다 "RewriteRule^(. *) $ /index.php$1 [PT, QSA, L] " –