[英]LAMP stack's PHP not working (Ubuntu 13.10 / Apache 2.4.6)
在我的LAMP堆棧上遇到PHP問題:根本沒有解析PHP腳本。 我在清除機器上設置了Ubuntu 13.10 ......我現在看到只有頁面上的清晰HTML,但PHP標簽就像文本一樣
實際上,我有:
$ / usr / sbin / apache2ctl status | grep版本
Server Version: Apache/2.4.6 (Ubuntu) PHP/5.5.3-1ubuntu2.1
$ tail -n 1 /var/log/apache2/error.log
[Sat Dec 14 19:33:16.307184 2013] [core:notice] [pid 15457] AH00094: Command line: '/usr/sbin/apache2'
$ apache2ctl -S
VirtualHost configuration:
*:80 is a NameVirtualHost
default server videosurgeon.ll (/etc/apache2/sites-enabled/vs.conf:1)
port 80 namevhost videosurgeon.ll (/etc/apache2/sites-enabled/vs.conf:1)
port 80 namevhost videosurgeon.ll (/etc/apache2/sites-enabled/vs.conf:1)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex default: dir="/var/lock/apache2" mechanism=fcntl
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
Mutex rewrite-map: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33 not_used
Group: name="www-data" id=33 not_used
$ apache2ctl -M | grep php
php5_module (shared)
$ cat /work/VS/httpdocs/test.php
<? phpinfo(); ?>
$ cat /etc/apache2/sites-enabled/vs.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName videosurgeon.ll
DirectoryIndex index.php index.html index.htm
DocumentRoot /work/VS/httpdocs/
<Directory /work/VS/httpdocs/>
Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,alert, emerg.
LogLevel notice
CustomLog /var/log/apache2/access.log combined
</virtualHost>
$ / usr / bin / php --version
PHP 5.5.3-1ubuntu2.1 (cli) (built: Dec 12 2013 04:22:11)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies
UPD.1:這是我的apache2.conf: http : //ge.tt/6Yd8Jj91/v/0
UPD.2:今天我умут試圖刪除所有內容並重新安裝LAMP。 結果完全相同: PHP不起作用。
sudo apt-get install lamp-server^
但有趣的是phpmyadmin工作正常。 我只是安裝它:
sudo apt-get install php5 php5-cgi phpmyadmin
事實證明,(在phpmyadmin中)有一些設置可以讓它使用PHP ...
剛遇到同樣的問題。 你必須使用<?PHP
而不是<?
或更改以下配置:
/etc/php5/apache2/php.ini
; This directive determines whether or not PHP will recognize code between
; <? and ?> tags as PHP source which should be processed as such. It's been
; recommended for several years that you not use the short tag "short cut" and
; instead to use the full <?php and ?> tag combination. With the wide spread use
; of XML and use of these tags by other languages, the server can become easily
; confused and end up parsing the wrong code in the wrong context. But because
; this short cut has been a feature for such a long time, it's currently still
; supported for backwards compatibility, but we recommend you don't use them.
; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
short_open_tag = On
檢查httpd.conf中是否有這些行:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
還要確保你的php模塊已加載:
LoadModule php5_module modules/mod_php55.so
之后,重新啟動apache並清除瀏覽器的緩存,然后重試。
出於某種原因,默認情況下默認虛擬主機不執行php: https : //askubuntu.com/questions/407744/apache-doesnt-execute-php-files-but-makes-me-download-them
明確啟用php引擎:
<IfModule mod_php5.c>
php_admin_flag engine on
</IfModule>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.