Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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
Php 即使在apache中启用了url重写,我的zend framework应用程序也没有读取htaccess文件_Php_Zend Framework_Apache2 - Fatal编程技术网

Php 即使在apache中启用了url重写,我的zend framework应用程序也没有读取htaccess文件

Php 即使在apache中启用了url重写,我的zend framework应用程序也没有读取htaccess文件,php,zend-framework,apache2,Php,Zend Framework,Apache2,我已经构建了一个Zend框架应用程序。通过将其配置为读取routes.ini文件,我的应用程序在部署后不会转到任何路由,但只有默认路由工作。我在这个应用程序中总共有4条路线,但没有一条是有效的。Apache显示未找到的错误 我查看了.htaccess文件,它非常完美,在我的本地环境下运行良好。我还检查了权限。它具有www-data的读写权限。我还检查了ApacheURL重写模块 我再次这样做,并尝试: sudo a2enmod rewrite 还是同一个问题 我的apache错误日志显示该文件

我已经构建了一个Zend框架应用程序。通过将其配置为读取
routes.ini
文件,我的应用程序在部署后不会转到任何路由,但只有默认路由工作。我在这个应用程序中总共有4条路线,但没有一条是有效的。Apache显示未找到的错误

我查看了
.htaccess
文件,它非常完美,在我的本地环境下运行良好。我还检查了权限。它具有
www-data
的读写权限。我还检查了ApacheURL重写模块

我再次这样做,并尝试:

sudo a2enmod rewrite
还是同一个问题

我的apache错误日志显示该文件不存在。

请告诉我哪里出了问题。

尝试以下步骤来修改

sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

sudo gedit /etc/apache2/sites-enabled/000-default
添加以下代码

<Directory /var/www/your_prject_name>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
    Order allow,deny
    allow from all
    # This directive allows us to have apache2's default start page
    # in /apache2-default/, but still have / go to the right place
    # Commented out for Ubuntu
    #RedirectMatch ^/$ /apache2-default/
 </Directory>

在研究了几个小时之后,我注意到apache vhost文件中有一个非常小且敏感的错误

我的参赛作品是这样的

<Directory /var/www/your_project>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

选项索引跟随符号链接多视图
不允许超限
命令允许,拒绝
通融
但实际上我的条目应该是这样的

<Directory /var/www/your_project>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory

选项索引跟随符号链接多视图
允许超越所有
命令允许,拒绝
通融

你能在你的.htaccess和access中写下“拒绝所有”来做一个测试吗??你应该看到一个403错误。它没有给我403错误。好的,那么你的重写模块不工作了!能否重新启用重新布线模块?你也在httpd.conf中启用了模块吗?我刚刚做了这个sudo a2enmod重写来启用will wont dodid你尝试取消对LoadModule rewrite\u module modules/mod\u rewrite.so的注释吗?在apache的conf中?我已经有了这个设置,但仍然存在相同的问题,htaccess文件感谢您发布如此详细的解释,说明您是如何解决问题的,我希望更多的人会这样做!
<Directory /var/www/your_project>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory