我目前有动态网页。例如,index.php?p=proposal
会在我的网站/pages/landing.php
www/researchportal/
打开一个页面
目前,页面http://localhost/researchportal/proposal
似乎确实由它自己加载(只是proposal.php的内容,没有CSS),而不是通过index.php文件加载。这意味着CSS没有正确加载。
http://localhost/researchportal/index.php?p=proposal
此链接在加载CSS时正确加载。
http://localhost/researchportal/proposal
此链接不包含index.php文件中定义的标头和CSS。
我的.htaccess文件位于我的网站www/researchportal/
RewriteEngine On
RewriteRule ^([A-Za-z0-9-_]+)$ index.php?p=$1
为什么http://localhost/researchportal/proposal
没有正确加载?
答案 0 :(得分:0)
我认为xxx.css的服务器请求被重新路由到index.php你应该为你的css和image目录添加一个exege模式的exeption。允许robots.txt的例外也很有用。
答案 1 :(得分:0)
您当前的规则会将所有请求发送到index.php。您需要添加条件以防止对存在的实际文件/目录的请求,例如css被发送到index.php
RewriteEngine On
#Also recommend that you add a an explicit RewriteBase
RewriteBase /
#only run this rule if the request is not for an existing file or directory
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9-_]+)$ index.php?p=$1