thinkphp运行时,除了首页,其他页面都报错了:
The requested URL was not found on this server.
但是当访问全路径,如输入http://域名/index.php/模块/控制器/方法,看应该是可以访问的。如果您是apache服务器,检查publish/.htaccess文件,加入下面的代码,刷新应该就好了:
<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L] </IfModule>
同时检查Apache配置httpd.conf文件:找到AllowOverride指令,并将其值设置为ALL,示例配置如下:
AllowOverride ALL
这样配置后,Apache将加载并应用.htaccess文件中的规则。
如果您的服务器支持web.config文件,配置:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="rewrite" stopProcessing="true"> <match url="^(.*)$" /> <conditions logicalGrouping="MatchAll"> <add input="{HTTP_HOST}" pattern="^(.*)$" /> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="index.php/{R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
放网站的根目录下。