0

我有一个 WordPress 网站,我试图调用位于网站上的 php 脚本,URL 是这样的

http://example.com/folder/process.php

问题是当我尝试这样做时,我总是被重定向到主题“未找到”页面。这是htaccess文件

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

如果我将 test.html 文件放在该目录中,它将起作用,并显示 .html 文件的内容。我认为这与它不喜欢的 .php 扩展名有关吗?

如果我调用 example.com/wp-config.php 它会找到该文件并且 deosnt 显示 404 页面..

4

4 回答 4

1

该规则说“如果请求以 index.php 开头,则不要重写并停止”。

RewriteRule ^index\.php$ - [L]

在该行之前或之后,您可以立即添加类似

RewriteRule ^process\.php$ - [L]

不重写对该特定文件的请求。

请注意,您必须将文件放在 Wordpress 的 index.php 旁边才能正常工作。

于 2012-10-23T06:12:20.787 回答
0

将您的 .htaccess 更改为此:

# BEGIN WordPress

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/+folder/process\.php$ [NC]
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
于 2012-10-23T06:40:42.573 回答
0

好的,所以如果我使用 WordPress 安装附带的默认文件,在 cpanel 中复制它并重命名它会删除代码,然后将我的代码放入其中。

该文件已找到并且可以正常工作。所以我认为唯一剩下的可能是权限问题。我上传文件时为文件设置的权限是 777。我对文件权限一无所知。

我已经为此工作了 5 个小时,我试图找出问题所在。我对此很满意。

于 2012-10-23T07:48:23.007 回答
0

尝试在您的目录中完全关闭 mod_rewrite,/folder/方法是在其中创建一个 htaccess 文件并简单地添加这一行:

RewriteEngine On

它将使它不会应用父目录中的任何规则。如果 PHP 的怪异现象继续存在,您可能需要检查您的虚拟主机/服务器配置中是否没有任何规则,或者Multiviews是否关闭了类似的东西(通过Options -Multiviews)。

于 2012-10-23T07:32:38.657 回答