Symfony2:没有app.php找不到404

米拉德·萨法伊(Milad Safaei)

这是我在public_html目录中的htaccess:

DirectoryIndex app.php

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
    RewriteRule ^(.*) - [E=BASE:%1]

    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    RewriteCond %{ENV:REDIRECT_STATUS} ^$
    RewriteRule ^app\.php(/(.*)|$) %{ENV:BASE}/$2 [R=301,L]

    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule .? - [L]

    RewriteRule .? %{ENV:BASE}/app.php [L]
</IfModule>

<IfModule !mod_rewrite.c>
    <IfModule mod_alias.c>
        RedirectMatch 302 ^/$ /app.php/
    </IfModule>
</IfModule>

这是/etc/apache2/sites-available/mydomain_com.conf:

<VirtualHost *>
        ServerAdmin [email protected]
        ServerName  mydomain.com
        ServerAlias www.mydomain.com

        # Indexes + Directory Root.
        DocumentRoot /home/myuser/domains/mydomain.com/public_html
        # DirectoryIndex app.php
        <Directory /home/myuser/domains/mydomain.com/public_html>
            AllowOverride All
            Order allow,deny
            Allow from All
        </Directory>

        # CGI Directory
        ScriptAlias /cgi-bin/ /home/myuser/domains/mydomain.com/cgi-bin/
        <Location /cgi-bin>
                Options +ExecCGI
        </Location>


        # Logfiles
        ErrorLog  /home/myuser/domains/mydomain.com/log/error.log
        CustomLog /home/myuser/domains/mydomain.com/log/access.log combined
</VirtualHost>

这些是结果:

  • mydomain.com =>重定向到mydomain.com/app.php/,然后正常工作。
  • mydomain.com/post/ => 404未找到
  • mydomain.com/app.php/post/ =>可以正常工作。

任何的想法 ?

安东

是否启用了Apache的mod_rewrite?如果不是,请启用它,重新启动服务器,然后重试。

a2enmod rewrite
service apache2 restart

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章