我最近上传了一个PHP主题在我的服务器上。 除了我的主页,其他任何部分都可以正常工作。 例如,当访问www.mywebsite.com/anything
主题正在工作,但在主页www.mywebsite.com
显示服务器的默认页面。
我正在玩htacess RewriteEngine,它在某些情况下工作,但可能不正确。 这是我迄今为止:
<IfModule mod_rewrite.c> RewriteEngine on Options -Multiviews RewriteCond %{REQUEST_URI} !-d RewriteCond %{REQUEST_URI} !-f RewriteRule ^(.*)?$ index.php?a=$1 [QSA,NC,L] ErrorDocument 404 /new/404.php </IfModule>
这使我的主页工作,但标题没有显示它的标题上的“页面未find”。 该页面正在工作,我正在改变的是上面的两个RewriteCond。 他们被设置为{REQUEST_FILENAME}
但这使得我的网站主页不工作,并显示默认的服务器页面。
在你的问题中不清楚是否正确的PHP文件被击中。 假设.htaccess
的语法是正确的:
你的RewriteRule
指示你的index.php
作为任何不存在的文件和目录的接收者,path(我相信)被发送到$_GET['a']
…它取决于你的index.php
检测并妥善处理。
ErrorDocument
是一个单独的机制,再一次,如果404.php
被打到它,例如header('HTTP/1.1 404 File Not Found')
,然后输出指示未find页面的HTML。