我为我的服务器电脑安装了 ubuntu 12.04 服务器版本。我安装了 lamp 服务器。我需要将 var/www 位置更改为我的辅助硬盘位置。我多次在 gedit /etc/apache2/sites-available/default 中配置了以下是我的代码
<VirtualHost *:80>
ServerAdmin webmaster@localhost
#DocumentRoot /var/www
DocumentRoot /media/myserver/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#<Directory /var/www/>
<Directory /media/myserver/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
并且还使用
sudo chown -R var/www /media/myserver/
和
chmod -R 755 /media/myserver/
我仍然无法连接我的 /media/myserver,并且我的浏览器显示以下消息
Forbidden
You don't have permission to access / on this server.
请告诉任何人如何在我的 var/www 上安装 myserver,谢谢
答案1
您必须编辑apache2.conf
并000-default.conf
更改 apache 的文档根目录。
Apache 服务器安装在/var/www/html
。这是 apache 的默认根目录。
更改 Apache 的根目录或将项目移动到/var/www/html
。
要更改 Apache 的根目录,请运行:
cd /etc/apache2/sites-available
000-default.conf
然后使用以下命令打开文件:nano 000-default.conf
编辑
DocumentRoot
选项:DocumentRoot /path/to/my/project
然后重新启动apache服务器:
sudo service apache2 restart
如果你Forbidden You don't have permission to access / on this server
在更改 apache 的根目录后出现此问题,请按照以下步骤操作
找到
apache2.conf
位于/etc/apache2
并使用以下方式打开它:nano apache2.conf
使用Ctrl+W并搜索目录(它应该在第 153 行)
它应该看起来像这样
<Directory /> Options Indexes FollowSymLinks AllowOverride All Require all denied </Directory>
将其更改为
<Directory /> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Require all granted </Directory>
重启 Apache
sudo service apache2 restart
我编写了一个脚本,它可以通过一个命令更改 Apache 根目录。你可以在我的github。
答案2
可能有点晚了。但是仍然……
您应该在 /etc/apache2 下的 apache.conf 中编辑目录权限
搜索此内容
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
并在其下方添加此代码,以授予访问目录的权限
<Directory /media/myserver/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
答案3
只需在激活的配置中更改文档根目录,/etc/apache2/sites-enabled/000-default
然后确保重新加载 apache。
因此尝试一下这个:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /media/myserver/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /media/myserver/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
然后应该像这样给予适当的许可:
sudo adduser <username> www-data
sudo chown -R www-data:www-data /media/myserver/
sudo chmod -R g+rw /media/myserver/
答案4
作为一种快速的解决方法(安全且快速),您可以将外部硬盘驱动器的安装点设为默认根目录(默认为 /var/www)。
将挂载点分配给现有的目录是安全的,但除非卸载驱动程序,否则无法访问旧内容。
要了解如何创建安装点,请参阅这。