codeigniter htaccess php инструкции не работают - PullRequest
0 голосов
/ 02 октября 2018

В моем php.ini я отключил загрузку файлов по всему миру:

file_uploads = Off

И я попытался включить загрузку файлов только для моего сайта codeigniter.Поэтому я добавил в файл .htaccess следующее:

php_flag file_uploads 1

И я убедился, что AllowOverride настроен следующим образом в apache config file:

<Directory /var/www/my_codeigniter_app/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>

Однако загрузка файлане работает.Это работает только тогда, когда я включаю загрузку файлов глобально.

1 Ответ

0 голосов
/ 04 октября 2018

Вы не можете установить директиву file_uploads с помощью .htaccess.

В соответствии с руководство , file_uploads является настройкой типа PHP_INI_SYSTEM.Это означает, что вы можете установить его только через php.ini и httpd.conf.

Чтобы включить его только для вашего сайта CodeIgniter, вы можете установить директиву в конфигурации VirtualHost с помощью php_admin_value вместо php_value, поскольку php_value может устанавливать только параметры уровня PHP_INI_ALL или PHP_INI_PERDIR:

<VirtualHost *:80>
    DocumentRoot /var/www/my_codeigniter_app
    # [...] all your other settings

    php_admin_value file_uploads 1
</VirtualHost>

Если у вас нет конфигурации VirtualHost для вашегоСайт CodeIgniter, вы можете также установить его в разделе <Directory> вашей конфигурации Apache (опять же, используя php_admin_value), хотя я сам не пробовал, поэтому я не 100% уверен, что это сработает:

<Directory /var/www/my_codeigniter_app/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
    php_admin_value file_uploads 1
</Directory>
...