htaccess重写导致错误

时间:2012-06-14 00:39:06

标签: php .htaccess mod-rewrite

我正在使用我下载的PHP应用程序,它在我的服务器上运行了一半,但是我认为这是一个重写错误。

该应用程序是一个“工作板”,人们可以浏览可用的职位,并在线申请。

目前它在“技术上”工作。一个人可以查看网站和帖子,他们可以填写申请表。消息正确发送。

问题是,一旦按下提交按钮,浏览器就会显示页面正在加载,但没有任何内容加载。因此发送消息,但未加载以下页面。

该应用程序使用htaccess重写,我相信这就是问题所在。

应用程序应该在顶级域上开箱即用,但我试图在子域上使用它。假设技术上使用子域名没有太大区别,我是否正确?毕竟,页面都会正常加载,直到提交表单。

该应用程序正在http://volunteer.essentialtransit.com

运行

您看到的是最初设置后的应用程序,我添加了一个示例“作业”。

您可以尝试申请查看我所指的问题。这是一个非常简单的申请表,只需几秒钟即可完成。

这是htaccess文件:

# AddType x-mapp-php5 .php
# AddHandler x-mapp-php5 .php

RewriteEngine on
Options +FollowSymlinks

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]

ErrorDocument 404 /page-unavailable/

<files ~ "\.tpl$">
order deny,allow
allow from none
deny from all
</files>

也许如果有人能够解释htaccess规则正在做什么,我可以解决问题。

编辑:所以页面实际上会加载,但只是在很长一段时间之后。浏览器显示表单已发送,然后开始加载后续页面,但实际加载需要几分钟。网站上的所有其他页面加载速度都快于此。其他奇怪的事情是,当一个“作业”页面最初打开时,它会快速加载,在应用它之后只需重定向回相同的“作业”页面,但这次需要永远加载。

1 个答案:

答案 0 :(得分:1)

规则是不言自明的:

RewriteEngine on # Enables rewrite engine (obviously)
Options +FollowSymlinks # Tells Apache to follow symbolic links

RewriteCond %{REQUEST_FILENAME} !-f # Here it redirects non-files
RewriteCond %{REQUEST_FILENAME} !-d # and non directories
RewriteRule . index.php [L]         # to index.php

ErrorDocument 404 /page-unavailable/ # Sets 404 page address

<files ~ "\.tpl$"> # Denies access to templates
order deny,allow
allow from none
deny from all
</files>

我怀疑你的问题与这些规则有关。