Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何在Ubuntu VPS上使用密码创建子域_Linux_.htaccess_Ubuntu_Apache2_Subdomain - Fatal编程技术网

Linux 如何在Ubuntu VPS上使用密码创建子域

Linux 如何在Ubuntu VPS上使用密码创建子域,linux,.htaccess,ubuntu,apache2,subdomain,Linux,.htaccess,Ubuntu,Apache2,Subdomain,嗨,我试图用VirtualHost为我的网站创建一个带有密码的子域。由于某种原因,它不起作用,我不知道它为什么会起作用 我应该用什么。htaccess或VirtualHost 这就是我在虚拟主机中尝试的 <VirtualHost *:80> ServerName www.example.com ServerAlias example.com ServerAdmin example@example.com DocumentRoot /var/www/ex

嗨,我试图用VirtualHost为我的网站创建一个带有密码的子域。由于某种原因,它不起作用,我不知道它为什么会起作用

我应该用什么。htaccess或VirtualHost

这就是我在虚拟主机中尝试的

<VirtualHost *:80>
    ServerName www.example.com
    ServerAlias example.com
    ServerAdmin example@example.com
    DocumentRoot /var/www/example.com
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>


<VirtualHost *:80>
    # Admin email, Server Name (domain name) and any aliases
    ServerAdmin example@example.com
    ServerName  dev.example.com
    DocumentRoot /var/www/example.com/dev/
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

服务器名www.example.com
ServerAlias example.com
服务器管理员example@example.com
DocumentRoot/var/www/example.com
ErrorLog${APACHE_LOG_DIR}/error.LOG
CustomLog${APACHE\u LOG\u DIR}/access.LOG组合
#管理员电子邮件、服务器名(域名)和任何别名
服务器管理员example@example.com
ServerName dev.example.com
DocumentRoot/var/www/example.com/dev/
ErrorLog${APACHE_LOG_DIR}/error.LOG
CustomLog${APACHE\u LOG\u DIR}/access.LOG组合

我是否错过了一个步骤,或者我做了一些完全错误的事情?

virtualhost将使您能够创建子域并将其映射到一个目录(正如您所做的那样)

要通过.htaccess进行密码保护,您需要提供必要的配置

AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /path/to/.htpasswd
Require valid-user

要创建.htpasswd文件,可以使用
htpasswd

htpasswd -c .htpassword testuser

到底是什么不起作用?子域还是密码保护?提供更多详细信息会很有帮助(例如,您的.htaccess文件):是否显示密码提示?是否给出了内部服务器错误消息?由于某些原因,当我转到子域时,没有收到登录提示。此外,我还可以访问example.com/dev上的dev子域。我是否错过了一个步骤?请在此处尝试步骤:但很可能是由于“通过AllowOverride设置禁用了Htaccess”