0

对于我试图提供的网站,我一直在生产服务器上遇到问题,我不知道该怎么做才能解决它。我正在使用 Symfony 4.3 对网站进行编码,我的服务器在 Ubuntu 18.04 发行版上,我已经设置了 PHP 7.3 和 Apache 2.4.29。问题是我可以使用如下所示的 URL 访问我的网站:www.sub.domain.com/index.php/login但我宁愿使用以下 URL www.sub.domain.com/login返回 404 错误。所以我最初认为这是一个 Apache 重定向问题,我试图在这些链接的帮助下删除 URL 中的index.php部分:

但是这些都没有真正起作用,因为我在 URL www.sub.domain.com/login中遇到了 404 错误。所以我想知道这是否真的是 Apache 配置错误或 Symfony 错误?如果有人知道如何解决这个问题?我在这里粘贴了我的虚拟主机配置,我在其中添加了 symfony/apache_pack 内部标记生成的 .htaccess 文件的内容。感谢您花时间阅读我的问题。随时向我询问我在写这篇文章时可能没有想到的其他信息。

<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>

编辑:启用 mod_rewrite 的日志跟踪后添加 50 行 Apache error.log

[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
4

1 回答 1

0

我找到了关于我的虚拟主机配置问题的解决方案。在论坛上搜索解决方案时,我发现以下命令列出所有启用的虚拟主机:apache2ctl -S

然后我看到了为 HTTPS 连接创建的第二个配置文件,但我并不知道。

然后我修改了文件如下。对于 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>

对于 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>

哪些是 Symfony4 的推荐配置。再次感谢您对我的要求感兴趣。

于 2020-06-16T14:05:35.630 回答