douzhuan1169
2019-07-06 14:21
浏览 79
已采纳

Symfony(3.4)app:无法通过.htaccess将请求重定向到/ web目录

I've a website lets say website.fr ( on server : /web/website ) ; I ve added a symfony blog app in /web/website/blog/.

I dont manage to access the blog via website.fr/blog/ (404 error)

There is a .htaccess file in /web/website/blog/ directory, and one in /web/website/blog/web directory.

I am used to deploy symfony apps 'alone' on a server, and make the domain point to the web dir of the app, and everything always works fine, but in this configuration, I cant get it to work.

I have tried to use the following .htaccess conf under /web/website/blog/ :

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ web/$1 [QSA,L]
</IfModule>

And I did not edit the default one under /web/website/blog/web/

Im not sure what Im doing wrong, so any help would be appreciated !

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • donglin6109 2019-07-12 12:41
    已采纳

    I couldn't get what I wanted, but here is the solution I implemented :

    I created a .htaccess in /web/website dir, that rewrites all requests to /web/website/blog, with the root (/) excluded from this rewriting :

    <IfModule mod_rewrite.c>
        RewriteEngine On
    
        RewriteCond %{REQUEST_URI} !^/$
        RewriteCond %{REQUEST_FILENAME} !-f
    
        RewriteRule ^(.*)$ blog/web/$1 [QSA,L]
    
    </IfModule>
    

    That's not the way I wanted to get my rewriting, but I have the result I expected ; note that it would not be a good solution for a website that would evolve with new modules, routes, folders...

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • duanliang9288 2019-07-07 13:53

    For me I use .. nano /etc/apache2/sites-available/000-default.conf

    <VirtualHost *:80>
        ServerName domain.tld
        ServerAlias www.domain.tld
    
        DocumentRoot /var/www/project/web
        <Directory /var/www/project/web>
            AllowOverride All
            Order Allow,Deny
            Allow from All
        </Directory>
    
        # uncomment the following lines if you install assets as symlinks
        # or run into problems when compiling LESS/Sass/CoffeeScript assets
        # <Directory /var/www/project>
        #     Options FollowSymlinks
        # </Directory>
    
        ErrorLog /var/log/apache2/project_error.log
        CustomLog /var/log/apache2/project_access.log combined
    </VirtualHost>

    which is explained Here and restart Apache, but I do not know if I understand your problem

    </div>
    
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题