我有一个带有 NTFS 文件系统的外部 USB 硬盘“ExtHD1TB”。
我在装有 kubuntu 20.04(ext4 文件系统)的电脑上安装了 XAMPP
我想直接从外部硬盘驱动器上的 xampp 访问我的网站,因为在工作中我必须使用 Windows PC,它也安装了 XAMPP,并且我可以访问我的外部硬盘驱动器网站来进行工作。
/media/user/ExtHD1TB/DATOS/SITES/MyWEBS/examplesite
我的站点根据我的 kubuntu定位。
为了实现这一点,我在 httpd-vhost.conf 文件中创建了一个虚拟主机
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/media/user/ExtHD1TB/DATOS/SITES/MyWEBS/examplesite"
ServerName examplesite.localhost
ServerAlias www.examplesite.localhost
<Directory "/media/user/ExtHD1TB/DATOS/SITES/MyWEBS/examplesite">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog "logs/examplesite.localhost-error_log"
CustomLog "logs/examplesite.localhost-access_log" common
</VirtualHost>
并取消注释我的文件Include etc/extra/httpd-vhosts.conf
中的行httpd.conf
由于这没有完成工作,我尝试为我的httpd.conf
文件添加一个别名,因此我添加了这个:
DocumentRoot "/media/user/ExtHD1TB/DATOS/SITES/MyWEBS/examplesite"
<Directory "/media/user/ExtHD1TB/DATOS/SITES/MyWEBS/examplesite">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
和这个
Alias /examplesite "/media/user/ExtHD1TB/DATOS/SITES/MyWEBS/examplesite"
到<IfModule alias_module>
我的httpd.conf
文件
但它也不起作用。当我尝试访问该网站时,我总是收到此消息,localhost/examplesite
或者examplesite.localhost
禁止访问!
您无权访问请求的目录。没有索引文档或目录受读保护。
如果您认为这是服务器错误,请联系网站管理员。错误 403 examplesite.localhost Apache/2.4.43 (Unix) OpenSSL/1.1.1g PHP/7.4.6 mod_perl/2.0.8-dev Perl/v5.16.3
我开始认为问题出在 xampp 访问 ntfs 文件系统。
如果您能帮助我,我将不胜感激。
非常感谢您的宝贵时间。
瓦戈
答案1
我最终发现您可以更改用户和组以httpd.conf
匹配您的用户名和组。
我的用户名是ben
,群组也是,ben
所以我将其daemon
从ben
改为http.conf
以前的 httpd.conf
<IfModule unixd_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User daemon
Group daemon
</IfModule>
新的 httpd.conf
<IfModule unixd_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User ben
Group ben
</IfModule>
现在我的虚拟主机可以工作了。
我的虚拟主机
<VirtualHost *:80>
DocumentRoot "/media/ben/Larder/Projects/payroll/public"
ServerName payroll.devo
<Directory "/media/ben/Larder/Projects/payroll/public">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
文档根目录设置httpd.conf
DocumentRoot "/media/ben/Larder/Projects"
<Directory "/media/ben/Larder/Projects">
Options Indexes FollowSymLinks ExecCGI Includes
AllowOverride All
Require all granted
</Directory>