我正在尝试通过 WSL 安装 owncloud,但是 owncloud 和 php 版本存在问题...现在我遇到了这个问题:
apache2 配置测试失败。没有执行任何操作。
配置测试的输出为:
apache2: Syntax error on line 225 of /etc/apache2/apache2.conf: Syntax error on line 5 of /etc/apache2/sites-enabled/owncloud.conf: <IfModule takes one argument, Container for directives based on existence of specified modules
Action 'configtest' failed.
The Apache error log may have more information.
答案1
进入mysql:
sudo mysql
创建owncloud数据库:
mysql> CREATE DATABASE owncloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
mysql> GRANT ALL ON owncloud.* TO 'ownclouduser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
mysql> EXIT;
安装apache2、php及其模块:
sudo apt install apache2 libapache2-mod-php7.2 openssl php-imagick php7.2-common php7.2-curl php7.2-gd php7.2-imap php7.2-intl php7.2-json php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-pgsql php-smbclient php-ssh2 php7.2-sqlite3 php7.2-xml php7.2-zip
在防火墙中允许 Apache:
sudo ufw allow 'Apache Full'
下载、解压 owncloud 并更改其文件夹所有者:
wget https://download.owncloud.org/community/owncloud-10.3.2.zip -P /tmp
sudo unzip /tmp/owncloud-10.3.2.zip -d /var/www
sudo chown -R www-data: /var/www/owncloud
创建owncloud.conf配置文件:
sudo nano /etc/apache2/conf-available/owncloud.conf
Alias /owncloud "/var/www/owncloud/"
<Directory /var/www/owncloud/>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/owncloud
SetEnv HTTP_HOME /var/www/owncloud
</Directory>
使用以下命令启用新添加的配置和所有必需的 Apache 模块:
sudo a2enconf owncloud
sudo a2enmod rewrite
sudo a2enmod headers
sudo a2enmod env
sudo a2enmod dir
sudo a2enmod mime
重新加载 apache2 服务:
sudo systemctl reload apache2
在下一个地址安装 ownCloud:
http://domain_name_or_ip_address/owncloud