簡體   English   中英

Symfony 2:Web服務器不會重寫URL

[英]Symfony 2: The Web server doesn't rewrite the URL

當我這次將我的Web應用程序(Symfony2)投入生產時,服務器不重寫(通常是重寫)URL,我也不知道為什么。 我通常在根目錄和Web文件夾中使用.htaccess文件。

.htaccess根目錄:

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

/ web中的.htaccess:

RewriteCond%{REQUEST_FILENAME}上的RewriteEngine!-f RewriteRule ^(。*)$ web / $ 1 [QSA,L]

服務器生成以下錯誤:

內部服務器錯誤

服務器遇到內部錯誤或配置錯誤,無法完成您的請求。

請通過webmaster@subdomaine_goes_here.domaine_goes_here.com與服務器管理員聯系,以告知他們該錯誤發生的時間以及在該錯誤發生之前您執行的操作。

服務器錯誤日志中可能會提供有關此錯誤的更多信息。

此外,嘗試使用ErrorDocument處理請求時遇到500內部服務器錯誤錯誤。

您在根目錄中不需要.htaccess,在您的Web目錄中需要.htaccess,並且應該將域設置為指向該Web目錄。 當然可以對其進行自定義,但這是最好的解決方案(無法從瀏覽器訪問php文件)。 .htaccess應該指向生產中的web / app.php

整個服務器配置部分可以在以下位置找到: http : //symfony.com/doc/current/cookbook/configuration/web_server_configuration.html

通過在項目文件夾中放置兩個.htaccess文件成功解決了該問題(記住:我正在使用子域):

在根目錄/中:RewriteEngine在RewriteCond%{REQUEST_FILENAME}上!-f RewriteRule ^(。*)$ web / $ 1 [QSA,L]

在/ web文件夾中:我保留原始的.htaccess文件與symfony 2.7一起提供

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM