Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache htaccessyii2配置_Apache_.htaccess_Mod Rewrite_Yii2 - Fatal编程技术网

Apache htaccessyii2配置

Apache htaccessyii2配置,apache,.htaccess,mod-rewrite,yii2,Apache,.htaccess,Mod Rewrite,Yii2,我正在从事一个Yi2项目,并已在Wamp Localhost上进行了设置。我的Wamp我已设置了一个别名: Alias /project "c:/Users/Shaun/Desktop/projects/project/web/" <Directory "c:/Users/Shaun/Desktop/projects/project/web/"> AllowOverride all </Directory> 当我导航到

我正在从事一个Yi2项目,并已在Wamp Localhost上进行了设置。我的Wamp我已设置了一个别名:

Alias /project "c:/Users/Shaun/Desktop/projects/project/web/" 

<Directory "c:/Users/Shaun/Desktop/projects/project/web/">
    AllowOverride all
</Directory>
当我导航到上面的url时,我很好地点击了我的SiteController索引操作。但当我尝试去,例如:

http://localhost/project/site/index
它说:

在此服务器上找不到请求的URL/Users/Shaun/Desktop/projects/project/web/index.php

但它肯定在那里?!如果您将我的web.php配置视为我启用的组件:

'urlManager' => [
        'enablePrettyUrl' => true,
        'showScriptName' => false,
    ]
还是找不到。但如果我这样做,就可以很好地显示路线:

http://localhost/project/index.php/site/index
令人沮丧,因为我不想这样。这是怎么回事


谢谢,

您的项目结构似乎有点不理想。 文件夹web中是否还有其他项目文件夹

如果答案是“是”,则必须将.htaccess文件放在此项目文件夹中


但是,如果项目文件夹包含web,那么它就非常不理想。但在这种情况下,.htaccess文件必须位于项目文件夹中。

因为您正在处理虚拟目录(例如别名/site/“/dir/”),所以必须使用

RewriteBase /site/

在apache配置文件中。

在httpd.conf或vhost conf中设置
AllowOverride All


使用漂亮的URL时必须使用此选项。

您必须更改三个文件。
基本>.htaccess
基本>网络>.htaccess
基本>配置>web.php

使用下面url中给出的代码


这将对您有所帮助。

是否启用了重写模块?“mod_rewrite肯定已启用我已选中”我的道歉我错过了这一行,这通常发生在mod_rewrite未正确启用时,或者.htaccess未正确设置文件权限时(对于您来说,在windows上应该不是问题)。。尝试直接在apacheconf中设置相同的内容,而不是重写,然后完全重新启动服务器,似乎您还没有阅读有关问题上下文的内容。它是与yii2相关的东西。试着将它与apachealias指令结合使用,您会发现这还不够。问题出在基础上。
RewriteBase /site/