在网络文件夹中添加此htaccess
后:
RewriteEngine on
# If a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Otherwise forward it to index.php
RewriteRule . index.php
并添加组件config/web.php
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'enableStrictParsing' => false,
'rules' => [
// ...
],
],
然后在浏览器中打开:
http://localhost/myiiproj/site/login
我有这个错误:
内部服务器错误
服务器遇到内部错误或配置错误 无法完成您的请求。
请通过admin@example.com与服务器管理员联系以告知 它们发生此错误的时间以及您执行的操作 就在这个错误之前。
有关此错误的详细信息可能在服务器错误中可用 日志中。
我是否遗漏了配置中的内容?或者还有其他配置可以使这项工作吗?
答案 0 :(得分:1)
如果使用apache服务器,则必须在httpd.conf中启用rewrite_module, 您可以在C:\ wamp \ bin \ apache \ apache2.4.9 \ conf目录中找到httpd.conf。 这是我的目录,这个目录可能会改变,因此你必须使用你的目录。然后你去行:
#LoadModule rewrite_module modules/mod_rewrite.so
并删除(#)。您必须更改如下代码。
LoadModule rewrite_module modules/mod_rewrite.so
保存并关闭httpd.conf文件。重启你的apache服务器。
答案 1 :(得分:0)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]
</IfModule>
这是一个简单的htaccess来转换漂亮的网址 并确保启用mod_rewrite
或
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?mysite/(.*)$ /mysite/index.php/$1 [L]