我正在努力将Laravel 5.3项目部署到Ubuntu 16.04服务器。我遵循的教程说应该有
DocumentRoot /var/www
<Directory /var/www>
在"/etc/apache2/sites-enabled/000-default"文件中,我应该将它们编辑为:
DocumentRoot /var/www/project/public
<Directory /var/www/project/public>
我发现:
DocumentRoot /var/www
但没有芬·
<Directory /var/www>
我试图把它放在目录标签中
RewriteEngine On
RewriteBase /var/www/project/public
但它会导致重新启动 Apache 时出错。
我该怎么办??
您需要复制默认值-000.conf 不覆盖,并且不会从启用的站点中覆盖,而是从可用的站点中
复制sudo a2enmod rewrite //active mode rewriting
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/mysitename.com.conf
sudo nano /etc/apache2/sites-available/mysitename.com.conf
粘贴虚拟主机:
<Directory /var/www/project/public/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
在此保存并执行
:sudo a2ensite mysitename.com.conf
sudo a2dissite 000-default.conf
为您的根文件夹添加 htaccess :
sudo nano /var/www/project/public/.htaccess
sudo chmod 644 /var/www/project/public/.htaccess
sudo chown www-data:www-data -R /var/www //to be sure you have rights
sudo service apache2 reload //to take the new configuration
sudo service apache2 restart //apply ...
粘贴指令重写
RewriteEngine On
RewriteBase /var/www/project/public