0

I've been stuck on a problem on my production server for the website I'm trying to provide and I don't know what to do to solve it. I am using Symfony 4.3 for coding the website, my server is on Ubuntu 18.04 distribution, I have set on it PHP 7.3 and Apache 2.4.29. The problem is I can access my website with a URL looking like this : www.sub.domain.com/index.php/login but I rather have the following url www.sub.domain.com/login which returns a 404 error. So I originally thought that it was an Apache redirection problem and I tried to remove the index.php part in the URL with the help of those links:

But none of these have really worked because of the 404 error I am getting with the URL www.sub.domain.com/login. So I am wondering if it is really an Apache configuration error or a Symfony one ? And if anyone has an idea about how to solve this problem ? I paste here my Virtual Host configuration in which I have added the content of .htaccess file generated by symfony/apache_pack inside tag. Thank you for the time you have taken to read my question. Feel free to ask me for additional information that I may not have thought about while writing the post.

<VirtualHost *:80>
    ServerAdmin admin@mail.com
    ServerName sub.domain.com
    ServerAlias www.sub.domain.com
    DocumentRoot /var/www/sub.domain/path/to/public
    <Directory /var/www/sub.domain/path/to/public>
        AllowOverride None
        Require all granted
        Allow from All
        #<Files "*.(jpg|png|tif|tiff)">
        #     Require all denied
        #</Files>

        # Use the front controller as index file. It serves as a fallback solution when
        # every other rewrite/redirect fails (e.g. in an aliased environment without
        # mod_rewrite). Additionally, this reduces the matching process for the
        # start page (path "/") because otherwise Apache will apply the rewriting rules
        # to each configured DirectoryIndex file (e.g. index.php, index.html, index.pl).
        #DirectoryIndex index.php

        # By default, Apache does not evaluate symbolic links if you did not enable this
        # feature in your server configuration. Uncomment the following line if you
        # install assets as symlinks or if you experience problems related to symlinks
        # when compiling LESS/Sass/CoffeScript assets.
        # Options FollowSymlinks

        # Disabling MultiViews prevents unwanted negotiation, e.g. "/index" should not resolve
        # to the front controller "/index.php" but be rewritten to "/index.php/index".
        <IfModule mod_negotiation.c>
            Options -MultiViews
        </IfModule>

        <IfModule mod_rewrite.c>
            RewriteEngine On

            # Determine the RewriteBase automatically and set it as environment variable.
            # If you are using Apache aliases to do mass virtual hosting or installed the
            # project in a subdirectory, the base path will be prepended to allow proper
            # resolution of the index.php file and to redirect to the correct URI. It will
            # work in environments without path prefix as well, providing a safe, one-size
            # fits all solution. But as you do not need it in this case, you can comment
            # the following 2 lines to eliminate the overhead.
            #RewriteCond %{REQUEST_URI}::$0 ^(/.+)/(.*)::\2$
            #RewriteRule ^(.*) - [E=BASE:%1]

            # Sets the HTTP_AUTHORIZATION header removed by Apache
            RewriteCond %{HTTP:Authorization} .+
            RewriteRule ^ - [E=HTTP_AUTHORIZATION:%0]

            # Redirect to URI without front controller to prevent duplicate content
            # (with and without `/index.php`). Only do this redirect on the initial
            # rewrite by Apache and not on subsequent cycles. Otherwise we would get an
            # endless redirect loop (request -> rewrite to front controller ->
            # redirect -> request -> ...).
            # So in case you get a "too many redirects" error or you always get redirected
            # to the start page because your Apache does not expose the REDIRECT_STATUS
            # environment variable, you have 2 choices:
            # - disable this feature by commenting the following 2 lines or
            # - use Apache >= 2.3.9 and replace all L flags by END flags and remove the
            #   following RewriteCond (best solution)
            RewriteCond %{ENV:REDIRECT_STATUS} =""
            RewriteRule ^index\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L]

        ## I tried to add those two following lines to force https usage but it does not work since www.sub.domain.com/login return
            ## a 404 error
            RewriteCond %{HTTPS} !=on
            RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

            # If the requested filename exists, simply serve it.
            # We only want to let Apache serve files and not directories.
            #RewriteCond %{REQUEST_FILENAME} !-f
            #RewriteRule ^ %{ENV:BASE}/index.php [L]

        ## I have seen this line on forums but nothing change
            RewriteRule index.php/(.*) $1 [QSA,R=301,L]

            ## I also have tried this after commenting the previous line, it made a redirect when only in Virtual Host for port 80
            ## but when it is added in virtual host for port 443 too, it doesn't work anymore
            RewriteRule ^(.*)index.php$ /$1 [R=301,L]

            ## Those lines were in .htaccess file created by symfony apache_pack
            RewriteCond $1 !\.(gif|jpe?g|png|tif|tiff)$ [NC]
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteCond %{REQUEST_FILENAME} !-d
            RewriteRule ^(.*)$ /index.php/$1 [L]

            # Rewrite all other queries to the front controller.
            #RewriteRule ^ %{ENV:BASE}/index.php [L]
        </IfModule>

        <IfModule !mod_rewrite.c>
            <IfModule mod_alias.c>
                # When mod_rewrite is not available, we instruct a temporary redirect of
                # the start page to the front controller explicitly so that the website
                # and the generated links can still be used.
                RedirectMatch 307 ^/$ /index.php/
                # RedirectTemp cannot be used instead
            </IfModule>
        </IfModule>
        FallbackResource /index.php
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

<VirtualHost *:443>
    ## Identical configuration than virtual host for port 80 with the following lines added

    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/sous.domaine.com/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/sous.domaine.com/privkey.pem

</VirtualHost>

EDIT: add of 50 lines of the Apache error.log after enabling the log trace for mod_rewrite

[Thu Jun 04 11:28:24.155062 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3d0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] trying to replace context docroot /var/www/sub.domain/project/directory/public with context prefix
[Thu Jun 04 11:28:24.155068 2020] [rewrite:trace1] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3d0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] internal redirect with /index.php [INTERNAL REDIRECT]
[Thu Jun 04 11:28:24.155128 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3c688/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/index.php -> index.php
[Thu Jun 04 11:28:24.155136 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3c688/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '^index\\.php$' to uri 'index.php'
[Thu Jun 04 11:28:24.155143 2020] [rewrite:trace1] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3c688/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] pass through /var/www/sub.domain/project/directory/public/index.php
[Thu Jun 04 11:28:24.331545 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] add path info postfix: /var/www/sub.domain/project/directory/public/provisioning -> /var/www/sub.domain/project/directory/public/provisioning/snom/update/snom.cfg
[Thu Jun 04 11:28:24.331613 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/provisioning/snom/update/snom.cfg -> provisioning/snom/update/snom.cfg
[Thu Jun 04 11:28:24.331626 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '^index\\.php$' to uri 'provisioning/snom/update/snom.cfg'
[Thu Jun 04 11:28:24.331642 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] add path info postfix: /var/www/sub.domain/project/directory/public/provisioning -> /var/www/sub.domain/project/directory/public/provisioning/snom/update/snom.cfg
[Thu Jun 04 11:28:24.331658 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/provisioning/snom/update/snom.cfg -> provisioning/snom/update/snom.cfg
[Thu Jun 04 11:28:24.331674 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '.' to uri 'provisioning/snom/update/snom.cfg'
[Thu Jun 04 11:28:24.331698 2020] [rewrite:trace4] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] RewriteCond: input='/var/www/sub.domain/project/directory/public/provisioning' pattern='!-f' => matched
[Thu Jun 04 11:28:24.331712 2020] [rewrite:trace4] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] RewriteCond: input='/var/www/sub.domain/project/directory/public/provisioning' pattern='!-d' => matched
[Thu Jun 04 11:28:24.331722 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] rewrite 'provisioning/snom/update/snom.cfg' -> '/index.php'
[Thu Jun 04 11:28:24.331734 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] trying to replace prefix /var/www/sub.domain/project/directory/public/ with /
[Thu Jun 04 11:28:24.331745 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] trying to replace context docroot /var/www/sub.domain/project/directory/public with context prefix
[Thu Jun 04 11:28:24.331796 2020] [rewrite:trace1] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] internal redirect with /index.php [INTERNAL REDIRECT]
[Thu Jun 04 11:28:24.331861 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3ec20/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/index.php -> index.php
[Thu Jun 04 11:28:24.331872 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3ec20/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '^index\\.php$' to uri 'index.php'
[Thu Jun 04 11:28:24.331884 2020] [rewrite:trace1] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3ec20/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] pass through /var/www/sub.domain/project/directory/public/index.php
[Thu Jun 04 11:28:24.515660 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] add path info postfix: /var/www/sub.domain/project/directory/public/snom300 -> /var/www/sub.domain/project/directory/public/snom300/snom300.php
[Thu Jun 04 11:28:24.515772 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/snom300/snom300.php -> snom300/snom300.php
[Thu Jun 04 11:28:24.515838 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '^index\\.php$' to uri 'snom300/snom300.php'
[Thu Jun 04 11:28:24.515870 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] add path info postfix: /var/www/sub.domain/project/directory/public/snom300 -> /var/www/sub.domain/project/directory/public/snom300/snom300.php
[Thu Jun 04 11:28:24.515896 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/snom300/snom300.php -> snom300/snom300.php
[Thu Jun 04 11:28:24.515918 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '.' to uri 'snom300/snom300.php'
[Thu Jun 04 11:28:24.515961 2020] [rewrite:trace4] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] RewriteCond: input='/var/www/sub.domain/project/directory/public/snom300' pattern='!-f' => matched
[Thu Jun 04 11:28:24.516055 2020] [rewrite:trace4] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] RewriteCond: input='/var/www/sub.domain/project/directory/public/snom300' pattern='!-d' => matched
[Thu Jun 04 11:28:24.516085 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] rewrite 'snom300/snom300.php' -> '/index.php'
[Thu Jun 04 11:28:24.516115 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] trying to replace prefix /var/www/sub.domain/project/directory/public/ with /
[Thu Jun 04 11:28:24.516143 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] trying to replace context docroot /var/www/sub.domain/project/directory/public with context prefix
[Thu Jun 04 11:28:24.516161 2020] [rewrite:trace1] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a370a0/initial] [perdir /var/www/sub.domain/project/directory/public/] internal redirect with /index.php [INTERNAL REDIRECT]
[Thu Jun 04 11:28:24.516294 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c829a0ad0/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/index.php -> index.php
[Thu Jun 04 11:28:24.516323 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c829a0ad0/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '^index\\.php$' to uri 'index.php'
[Thu Jun 04 11:28:24.516343 2020] [rewrite:trace1] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c829a0ad0/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] pass through /var/www/sub.domain/project/directory/public/index.php
[Thu Jun 04 11:28:24.701065 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] add path info postfix: /var/www/sub.domain/project/directory/public/snom -> /var/www/sub.domain/project/directory/public/snom/snom.php
[Thu Jun 04 11:28:24.701128 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/snom/snom.php -> snom/snom.php
[Thu Jun 04 11:28:24.701140 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '^index\\.php$' to uri 'snom/snom.php'
[Thu Jun 04 11:28:24.701186 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] add path info postfix: /var/www/sub.domain/project/directory/public/snom -> /var/www/sub.domain/project/directory/public/snom/snom.php
[Thu Jun 04 11:28:24.701196 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/snom/snom.php -> snom/snom.php
[Thu Jun 04 11:28:24.701216 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '.' to uri 'snom/snom.php'
[Thu Jun 04 11:28:24.701234 2020] [rewrite:trace4] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] RewriteCond: input='/var/www/sub.domain/project/directory/public/snom' pattern='!-f' => matched
[Thu Jun 04 11:28:24.701246 2020] [rewrite:trace4] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] RewriteCond: input='/var/www/sub.domain/project/directory/public/snom' pattern='!-d' => matched
[Thu Jun 04 11:28:24.701256 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] rewrite 'snom/snom.php' -> '/index.php'
[Thu Jun 04 11:28:24.701267 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] trying to replace prefix /var/www/sub.domain/project/directory/public/ with /
[Thu Jun 04 11:28:24.701277 2020] [rewrite:trace2] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] trying to replace context docroot /var/www/sub.domain/project/directory/public with context prefix
[Thu Jun 04 11:28:24.701286 2020] [rewrite:trace1] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a3b0a0/initial] [perdir /var/www/sub.domain/project/directory/public/] internal redirect with /index.php [INTERNAL REDIRECT]
[Thu Jun 04 11:28:24.701342 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a40928/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] strip per-dir prefix: /var/www/sub.domain/project/directory/public/index.php -> index.php
[Thu Jun 04 11:28:24.701353 2020] [rewrite:trace3] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a40928/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] applying pattern '^index\\.php$' to uri 'index.php'
[Thu Jun 04 11:28:24.701389 2020] [rewrite:trace1] [pid 5275] mod_rewrite.c(482): [client X.X.X.X:49675] X.X.X.X - - [X.X.X.X/sid#7f3c82a8ffa0][rid#7f3c82a40928/initial/redir#1] [perdir /var/www/sub.domain/project/directory/public/] pass through /var/www/sub.domain/project/directory/public/index.php
So-Ra
  • 1
  • 3
  • If all of the listed questions did not help you, you doing somethig generally wrong. Just take the [Wordpress default rewrite](https://wordpress.org/support/article/htaccess/), I think it works for your case. In doubt, please activate the rewrite log and show us the concerning parts. – Daniel W. Jun 02 '20 at 16:07
  • Thank you for your answer and sorry for my late reply. I have tested the basic configuration given in the link by replacing the code that was in tag, but it is still not working. I found on the error.log the following line several times: [ssl:warn] [pid 25155] AH01909: sub.domain.com;:443:0 server certificate does NOT include an ID which matches the server name. I am starting to search about it since it may be linked to the problem – So-Ra Jun 03 '20 at 09:39
  • What I was talking about is the [RewriteLog](https://cwiki.apache.org/confluence/display/HTTPD/RewriteLog) not tthe error log :-) – Daniel W. Jun 03 '20 at 11:55
  • I have read that documentation page and found that for the version 2.4 of Apache, that I use, the RewriteLog is using the ErrorLog. So that's why I went searching on the error.log. Maybe have I misunderstood the doc ? – So-Ra Jun 03 '20 at 15:53
  • See [`LogLevel alert rewrite:trace5`](http://httpd.apache.org/docs/current/mod/mod_rewrite.html#logging). It will tell you exactly which decisions lead to which redirects in the error log after you have it enabled. – Daniel W. Jun 03 '20 at 21:14
  • Thank you for your reply, I have added the last 50 lines of the error.log (they were only rewrite_trace) on my post as an edit. I saw some redirection done with files like "snom300.php" is it an Apache related file ? or a Symfony one ? I don't really understand why some files like this are listed... – So-Ra Jun 04 '20 at 10:34

1 Answers1

0

I found a solution about the configuration problem of my virtual host. While searching about a solution on forums, I found the following command to list all virtual host enabled : apache2ctl -S

And then I saw a second configuration file made for HTTPS connection that I wasn't aware about.

I then modified the files as follows. For HTTP:

<VirtualHost *:80>
    ServerAdmin admin@mail.com
    ServerName sub.domain.com
    ServerAlias www.sub.domain.com
    DocumentRoot /var/www/sub.domain/path/to/public
    <Directory /var/www/sub.domain/path/to/public>
        AllowOverride None
        Order Allow,Deny
        Allow from All

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

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

And for HTTPS:

<VirtualHost *:443>
    ServerAdmin admin@mail.com
    ServerName sub.domain.com
    ServerAlias www.sub.domain.com
    DocumentRoot /var/www/sub.domain/path/to/public
    <Directory /var/www/sub.domain/path/to/public>
        AllowOverride None
        Order Allow,Deny
        Allow from All

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

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/sub.domain.com/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/sub.domain.com/privkey.pem
</VirtualHost>

Which are the recommended configuration for Symfony4. Thank you again for having put an interest at my request.

So-Ra
  • 1
  • 3