web-dev-qa-db-ja.com

PHPはApache仮想ホストでは機能しません

CentOS6にParallelsPower Panelを備えた仮想プライベートサーバーがあります。デフォルトのApache仮想ホスト(IPを使用してアクセス)は問題なく動作します。

ここで、Pleskを使用して新しいドメインを作成し、仮想ホストディレクトリにファイルをコピーしました。残念ながら、PHPスクリプトは機能しません-スクリプトにアクセスできますが、それらは先行していません。PHPデフォルトの仮想ホストがまだ機能しているため、モジュールは機能しています。

Httpd.conf(ここに 完全なファイル )を変更しようとしましたが、NameVirtualHostディレクティブとVirtualHostセクションを追加しましたが成功しませんでした。これは私が追加したセクションです:

NameVirtualHost *:80

<VirtualHost *:80>
    ServerAdmin admin@###.com
    DocumentRoot /var/www/vhosts/###.com/httpdocs/
    ServerName www.###.com
    ServerAlias ###.com
    ErrorLog /var/log/httpd/###.com/error.log
    CustomLog /var/log/httpd/###.com/access.log common



<Directory "/var/www/vhosts/###.com/httpdocs/">
    Options Indexes FollowSymLinks Includes MultiViews ExecCGI
    AllowOverride All

    Order allow,deny
    Allow from all
</Directory>

</VirtualHost>

これは私のphp.conf(conf.d内)です:

<IfModule prefork.c>
  LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule worker.c>
  LoadModule php5_module modules/libphp5-zts.so
</IfModule>

AddHandler php5-script .php

DirectoryIndex index.php

AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php
1
Marco Sulla

記録として、問題はPleskでした。

おそらく、PHP 5 from Webtatic からの手動インストールに問題がありました。その後、Pleskで作成された新しいサブドメインはApache構成にphp_admin_flag engine offがあります。

Pleskはドメインディレクトリのconfサブディレクトリにある[サブ]ドメインごとに1つの設定ファイルを作成し、それらをhttpd.confに含めるため、それらがどこにあるかを見つけるのは困難でした。これは良い習慣ですが、見つけるのが難しく、GUIオプションとは異なることをしたい場合は、簡単にパーソナライズすることはできません(GUIを介して何かを変更した場合、古いconfファイルは変更されませんが、新しいconfファイルは変更されます作成され、すべての変更を再適用する必要があります)。

1
Marco Sulla

デフォルトのインストール(httpd、phpパッケージ)で何も変更されていない場合は、short_open_tagのphp.iniの問題である必要があります-phpは拡張子が.phpのファイルを解析しますが、<?phpで始まらないコンテンツは無視します。

1
GioMac

.phpファイルを正しく解析するようにApacheを構成していないようです。それらをどうするかわからないので、ダウンロードとして吐き出します。

http://dan.drydog.com/Apache2php.html

手順11を試してください。

0
Phil Sturgeon