Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php htaccess重写导致错误_Php_.htaccess_Mod Rewrite - Fatal编程技术网

Php htaccess重写导致错误

Php htaccess重写导致错误,php,.htaccess,mod-rewrite,Php,.htaccess,Mod Rewrite,我使用的是我下载的一个PHP应用程序,它在我的服务器上运行了一半,但我认为这是一个重写错误 该应用程序是一个“工作板”,人们可以在这里浏览可用的职位,并在线申请 目前,它在“技术上”起作用。一个人可以查看网站和帖子,他们可以填写申请表。消息发送正确 问题是,一旦按下提交按钮,浏览器显示页面正在加载,但从未加载任何内容。因此,消息已发送,但未加载下一页 应用程序使用htaccess重写,我相信这就是问题所在 应用程序应该在顶级域上开箱即用,但我尝试在子域上使用它。我假设在使用子域时在技术上没有太大

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

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

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

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

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

应用程序应该在顶级域上开箱即用,但我尝试在子域上使用它。我假设在使用子域时在技术上没有太大差异,对吗?毕竟,在提交表单之前,页面都可以正常加载

应用程序正在运行

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

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

以下是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>
#AddType x-mapp-php5.php
#AddHandler x-mapp-php5.php
重新启动发动机
选项+FollowSymlinks
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则。index.php[L]
错误文档404/页不可用/
命令拒绝,允许
从无到有
全盘否定
也许如果有人能解释htaccess规则在做什么,我就能解决这个问题


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

规则是不言自明的:

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>
RewriteEngine on#启用重写引擎(显然)
Options+FollowSymlinks#告诉Apache遵循符号链接
重写cond%{REQUEST_FILENAME}-f#在这里,它重定向非文件
重写cond%{REQUEST_FILENAME}-d#和非目录
重写规则。index.php[L]#到index.php
ErrorDocument 404/页面不可用/#设置404页面地址
#拒绝访问模板
命令拒绝,允许
从无到有
全盘否定

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

快速注意:请记住不要使用sql注入…提交按钮在
中对我有效;SHOW TABLES
:)科尔,当使用这些下载的脚本时,我通常会在使用之前检查所有这些内容。在本例中,我试图让脚本实际工作,然后检查输入是否正确转义/净化。不过我现在会更正这个问题。请注意,我只是想看看您是否对输入进行了消毒。我发誓除此之外我没有恶意。听起来好像它在进行ajax调用,而且ajax文件中有一个错误,导致它不返回输出,但允许一些执行。检查服务器日志中的错误。