我是 Ubuntu 的新手,正尝试从 Windows 迁移,但在 Web 开发中有些东西我无法理解。
在 Windows 中,我只需安装服务器并在
www
文件夹或中创建一个文件夹htdoc
,当我通过浏览器访问它时,此文件夹对我来说就像一个站点,我可以在 Ubuntu 中访问它。我安装了lamp
并phpmyadmin
在中创建了文件夹/var/www
。之后,我将权限更改为,www
以便777
我可以通过创建文件夹,netbeans
但我仍然无法从浏览器访问我的站点。我搜索了一下,发现了一些奇怪的说明。从 10 个步骤来看,为什么我只使用 Ubuntu 14.04 LTS 的桌面版本。我不想让它成为人们的通用网站。它仅供我测试使用。有人能帮帮我吗?
答案1
为了定义多个站点,您应该定义“基于名称的虚拟主机“。
尝试在您的 apache 配置文件中添加此指令:
<VirtualHost *:80>
DocumentRoot /var/www/firstSite
ServerName firstSite.localhost
ServerAlias www.firstSite.localhost
<Directory "/var/www/firstSite">
Options +Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /var/www/secondSite
ServerName secondSite.localhost
ServerAlias www.secondSite.localhost
<Directory "/var/www/secondSite">
Options +Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
此配置定义两个与任意ip、端口80关联的虚拟主机。
当请求到达时,服务器将根据请求使用的 IP 地址和端口找到最佳(最具体)匹配参数。如果有多个虚拟主机包含此最佳匹配地址和端口组合,Apache 将进一步将 ServerName 和 ServerAlias 指令与请求中存在的服务器名称进行比较。
现在,要编辑/etc/hosts
文件,请将其作为单个命令运行:
echo '127.0.0.1 firstSite.localhost
127.0.0.1 secondSite.localhost' | sudo tee -a /etc/hosts
/etc/hosts文件是主机名的静态表查找。
This file is a simple text file that associates IP addresses with
hostnames, one line per IP address.
它用于在没有 DNS 服务器的情况下解析名称。
最后重启 Apache 服务器并http://firstSite.localhost/
验证http://secondSite.localhost/
答案2
我不知道 lamp 和 phpmyadmin,但你可以安装一个 apache 服务器,它就像你在 Windows 中描述的一样。最新版本的根目录现在是“/var/www/html”代替“/var/www”“有效”页面是“/var/www/html/index.html”。
您可以直接编辑“索引.html”文件(最简单),或者你可以通过编辑 conf 文件来指定要使用的另一个文件 “/etc/apache2/apache2.conf”。
sudo apt-get install apache2 php5 libapache2-mod-php5
sudo service apache2 restart
要在更改“index.html”文件后重新加载 apache,可以运行以下命令:
sudo service apache2 graceful
要从 Web 浏览器访问该页面,请转到http://localhost
、http://127.0.0.1
,或使用静态分配或 DHCP 提供的 IP。
我建议在更改默认的 index.html 页面之前先访问它,因为现在除了典型的“它有效”之外还有一些有用的信息。
如需更多信息,请使用以下命令访问 apache2 手册。
man apache2
和
/usr/share/doc/apache2/README.Debian.gz
您必须解压缩此文件。
更新
在 ubuntu 提供的最新版本的 apache2 中与窗户不同“默认文档根目录现在位于 /var/www/html“存档(文件夹)而不是像以前那样的 /var/www 存档(文件夹)。如果您愿意,您可以在 /var/www 中创建虚拟主机,但如果您“只想访问使用浏览器创建的文件夹或新网站”,则需要将它们放在/var/www/html/*目录而不是/var/www/。
如果您有另一个网站(firstsite.html),请将其放入“/var/www/html/firstsite.html“
要从浏览器访问此页面,请导航至 URL“ http://127.0.0.1/firstsite.html
”,就像从 Windows 中执行的操作一样。