因此,我使用本教程设置了我的服务器,并且当我使用服务器的 IP 作为地址输入地址时 test.php 文件正常工作时
http://1.2.3.4/test.php
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用虚拟主机,浏览器只会提供下载文件而不是执行它。所以这:
http://blog.mydomain.com/test.php
Run Code Online (Sandbox Code Playgroud)
提供下载文件而不是执行脚本。
我在 /etc/apache2/apache2.conf 中为虚拟主机使用的代码如下:
Include /etc/phpmyadmin/apache.conf
Include /etc/apache2/mods-available/php5.conf
<VirtualHost *:80>
DocumentRoot /path/to/vhosts/folder1
ServerName www.mydomain.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /path/to/vhosts/folder2
ServerName blog.mydomain.com
</VirtualHost>
NameVirtualHost *:80
Run Code Online (Sandbox Code Playgroud)
虽然我不得不说,当我重新启动 apache2 服务器时,我收到一条警告消息:
[....] Restarting web server: apache2
[Sun Jan 19 13:33:40 2014] [warn] NameVirtualHost *:80 has no VirtualHosts ... waiting [Sun Jan 19 13:33:41 2014] [warn] NameVirtualHost *:80 has no VirtualHosts
Run Code Online (Sandbox Code Playgroud)
小智 20
我让它与这条线一起工作:
sudo apt-get install libapache2-mod-php7.0
sudo service apache2 restart
Run Code Online (Sandbox Code Playgroud)
有时甚至会发生更糟糕的事情.... 我只是忘记安装 php
我在这里找到了解决方案。事实证明我必须启用一些模块......
摘自user1075581的Stack Overflow 回答:
这最终让我走上了正确的道路:
这是解决方案:
在本
<Directory>节中,我添加了以下几行:Run Code Online (Sandbox Code Playgroud)<IfModule sapi_apache2.c> php_admin_flag engine on </IfModule> <IfModule mod_php5.c> php_admin_flag engine on </IfModule>或者,将解决方案的编辑副本/粘贴到我的服务器上:
Run Code Online (Sandbox Code Playgroud)<Directory "/var/www/vhosts/A2/httpdocs"> <IfModule sapi_apache2.c> php_admin_flag engine on </IfModule> <IfModule mod_php5.c> php_admin_flag engine on </IfModule> (Other configuration parameters) </Directory>
| 归档时间: |
|
| 查看次数: |
90896 次 |
| 最近记录: |