2009-02-13 60 views
5

我已将文件和数据库从BradPPresents.com复制到BradP.com.HTACCESS导致内部服务器错误的文件

需要.htaccess文件才能使页面正常显示,因为“漂亮的URL”由joomla!启用。

您可以看到数据库和所有连接都在http://bradp.com/index.php上工作,但http://bradp.com/home.html不起作用,因为它依赖于.htaccess文件来解析URL。

我从bradppresents.com(目前工作正常)复制相同的htaccess文件到bradp.com,当文件存在时,我得到“内部服务器错误”。一旦它被删除,错误消失,但当然,该网站不会按需要工作。

我希望有人能为我发光一点点。

这里的.htaccess文件

RewriteEngine On 
RewriteBase/

RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|\.aspx|\.asp|/[^.]*)$ [NC] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule (.*) index.php 

## This attempts to block the most common type of exploit `attempts` to Joomla! 
# 
# Block out any script trying to set a mosConfig value through the URL 
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR] 
# Block out any script trying to base64_encode crap to send via URL 
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR] 
# Block out any script that includes a <script> tag in URL 
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR] 
# Block out any script trying to set a PHP GLOBALS variable via URL 
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR] 
# Block out any script trying to modify a _REQUEST variable via URL 
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2}) 
# Send all blocked request to homepage with 403 Forbidden error! 
RewriteRule ^(.*)$ index.php [F,L] 

#max files size restrictions 
php_value upload_max_filesize 20M 
php_value post_max_size 20M 

下面是Apache的站点配置文件。

<VirtualHost *:80> 
     ServerAdmin [email protected] 

     DocumentRoot /home/nick/public_html/bradp.com/html/ 
     <Directory /> 
       Options FollowSymLinks 
       AllowOverride All 
     </Directory> 
     <Directory /home/nick/public_html/bradp.com/html/> 
       Options Indexes FollowSymLinks MultiViews 
       AllowOverride All 
       Order allow,deny 
       allow from all 
     </Directory> 

     ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 
     <Directory "/usr/lib/cgi-bin"> 
       AllowOverride None 
       Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
       Order allow,deny 
       Allow from all 
     </Directory> 

     ErrorLog /var/log/apache2/error.log 

     # Possible values include: debug, info, notice, warn, error, crit, 
     # alert, emerg. 
     LogLevel warn 

     CustomLog /var/log/apache2/access.log combined 
     ServerSignature On 

    Alias /doc/ "/usr/share/doc/" 
    <Directory "/usr/share/doc/"> 
     Options Indexes MultiViews FollowSymLinks 
     AllowOverride None 
     Order deny,allow 
     Deny from all 
     Allow from 127.0.0.0/255.0.0.0 ::1/128 
    </Directory> 

</VirtualHost> 

它实质上是一个默认的文件,有一些变化。

我真的很感谢任何帮助,我可以得到; 感谢百万, 尼克

+1

在问你应该看看日志文件。 – Gumbo 2009-02-13 10:18:51

+0

甚至没有想过检查。谢谢。 – 2009-02-13 10:25:49

回答

8

看看你的错误日志,看到确切的错误信息。

但是由于您在第一句话中说“复制”,我假设您正在从一个主机移动到另一个主机。最可能的原因是rewrite模块未加载到新服务器上。

相关问题