Symfony 3 / Apache-发布请求给出错误500

时间:2020-04-20 18:55:47

标签: apache symfony

我有一个Symfony 3 API,我正在尝试注册用户,但是在执行POST请求(GET请求有效)时出现错误500。我的Apache配置可能有问题,因为我的日志文件中没有任何错误。函数顶部的var_dump('ok')也给我错误500。

我的Apache配置:

<VirtualHost *:80>
    ServerName subscription.api.local
    ServerAlias www.subscription.api.local

    DocumentRoot /var/www/subscription_backend/web
    DirectoryIndex /app.php

    <Directory /var/www/subscription_backend/web>
        AllowOverride None
        Order Allow,Deny
        Allow from All

        FallbackResource /app.php
    </Directory>

    <Directory /var/www/subscription_backend>
        Options FollowSymlinks
    </Directory>

    <Directory /var/www/subscription_backend/web/bundles>
        FallbackResource disabled
    </Directory>

    ErrorLog /var/log/subscription-error.log
    CustomLog /var/log/subscription-access.log combined
</VirtualHost>

在我的主机文件中添加了行:

127.0.0.1 subscription.api.local www.subscription.api.local

我的项目位于~/Projects/subscription_backend目录中,并且在/var/www/subscription_backend中使用符号:

sudo ln -s  ~/Projects/subscription_backend /var/www/subscription_backend

“〜/ Projects / subscription_backend目录”的权限: enter image description here

“ / var / www / subscription_backend目录”的权限: lrwxrwxrwx 1 www-data www-data 55 avril 19 21:45 /var/www/subscription_backend -> /home/khan/Projects/subscription_backend/

我的配置有什么问题?为什么GET请求有效但POST不起作用?

Thx

1 个答案:

答案 0 :(得分:0)

最后,我解决了这个问题。

首先,修复权限https://symfony.com/doc/3.3/setup/file_permissions.html

cd ~/Projects/subscription_backend

rm -rf var/cache/*
rm -rf var/logs/*
HTTPDUSER=$(ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data [n]ginx' | grep -v root | head -1 | cut -d\  -f1)

sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX var
sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX var
composer install

然后安装内存缓存扩展程序:

sudo apt-get install memcached
sudo apt-get install php-memcached
sudo apt-get install php-memcache
sudo service apache2 restart

清除缓存:

bin/console c:c
bin/console c:c --env=prod
相关问题