• User

    non riesco a partire in php

    facendo l'installazione del php tutto ok ma quando lo lancio mi dice che un'altro servizio usa la stessa porta.
    uso win 2000 con tutti gli aggiornamenti.
    Se possibile consigli elementari grazie :bho:


  • Super User

    ciao Leo,
    non devi lanciare niente tu direttamente.
    devi solo dare la direttiva ad iis per processare le pagine .php con l'eseguibile che trovi nella cartella php.


  • User

    Grazie Tymba
    Ma io sono a livello 0---
    se per cortesia mi puoi dire passo passo cosa fare, nella maniera più semplice da far capire anche ai duri di :arrabbiato: come me
    Grazie

    @Tymba said:

    ciao Leo,
    non devi lanciare niente tu direttamente.
    devi solo dare la direttiva ad iis per processare le pagine .php con l'eseguibile che trovi nella cartella php.


  • Super User

    se vuoi installare php 5:
    http://www.phpnews.it/content/view/225/80/1/0/

    se vuoi installare php4:

    Scaricate PHP 4 dai link sotto:

    http://www.php.net/downloads.php (Windows Binaries, Zip Package)

    Unzippate il pacchetto il pacchetto in c:\php\ (può essere anche un'altra dir, basta cambiare i riferimenti successivi)
    Suponiamo che Windows sia in C:\Windows\

    PHP:

    • andare nella cartella dove abbiamo installato PHP
    • copiare il file php4ts.dll in C:\Windows\System32\
    • creare una cartella C:\php\session_data\
    • copiare il file php.ini-dist in C:\Windows\ e rinominarlo come php.ini
      -- editare il file con notepad e modificare le seguenti righe:
      --- cercare la parola "extension_dir" (senza viroglette) e modificare la directory in "C:\php\extensions"
      --- cercare la parola "extension=" e decommentare (togliendo il punto e virgola all'inizio della riga) solo le righe che ci interessano (per ora se non avete particolari esigenze, basta la riga con php_gd2.dll
      --- cercare la parola "session.save_path" e settate questo valore a "/php/session_data"
      --- chiudere e salvare

    Installazione e configurazione di Apache 2.0

    Scaricate Apache 2.0 dai link sotto:

    http://httpd.apache.org/download.cgi (Win32 Binary (MSI Installer): apache_2.0.xx-win32-x86-no_ssl.msi)

    Installate il pacchetto in C:\Programmi\Apache Group\ (può essere anche un'altra dir, basta cambiare i riferimenti successivi)

    Apache:

    • entrare nella cartella C:\Programmi\Apache Group\Apache2\conf
    • editare il file httpd.conf con notepad
      -- cercare una lista di righe contenenti la parola "LoadModule"
      -- inserire in cima la riga: "LoadModule php4_module c:/php/sapi/php4apache2.dll"
      -- cercare una riga che inizia con la parola "DirectoryIndex"
      -- modificatela in questo modo: "DirectoryIndex index.html index.html.var index.php"
      -- cercate la riga: "AddType application/x-gzip .gz .tgz" ed inseriteci sotto queste righe:
      AddType application/x-httpd-php .php3
      AddType application/x-httpd-php .php4
      AddType application/x-httpd-php .php
      -- chiudete e salvate

    Ecco fatto... Tutto è pronto... Basta avviare Apache dall'apposita utility nella system tray e siete a cavallo...

    Installazione e configurazione di Internet Informaiton Server

    Installazione di IIS:

    • Disconnettersi da Internet (importante, per non prendersi virus), in alternativa chiudete la porta 80 sul firewall
    • Pannello di controllo -> Installazione applicazioni -> Installazione Componenti di Windows (su XP, su 2000 non mi ricordo) -> mettere il CD di Widnows -> Dettagli su Internet Information Services -> Selezionare tutto tranne Servizio FTP e Servizio SMTP -> Avanti e terminare l'installazione
    • Riavviate
    • Riapplicate l'ultimo service pack del vostro sistema operativo e riapplicate tutte le patch di sicurezza successive a quel determinato service pack
    • Riavviate
    • Riconnettetevi ad Internet (se vi siete disconnessi) ed andate su Windows Update ed applicate tutte le patch
    • Riavviate

    Configurazione di php su IIS:

    • Pannello di Controllo -> Prestazioni e manutenzione (solo su XP) -> Strumenti di amministrazione
      A questo punto i nomi sono molteplici e variano a seocnda delle varie versioni di Windows: Gestione dei servizi internet Microsoft, Internet Information Services. Comunque l'icona è questa qua: http://utenti.lycos.it/ci0nci/IconaIIS.gif
      -- Espandere i rami fino ad arrivare a "Sito web predefinito"
      --- Tasto destro su "Sito web di amministrazine" -> Arresta
      --- Tasto destro su "Sito web predefinito" (o comunque quello su cui volete installare php, se lo volete installare su tutti fatelo su "Siti web") -> Proprietà
      ---- Scegliere il tab Home Directory -> Configurazione
      ----- Aggiungi
      ------ Scegliere c:\php\sapi\php4isapi.dll con sfoglia (selezionare *.dll come tipo di file)
      ------ Estensione: .php -> Ok
      ----- Ok
      ---- Scegliere il tab "Documenti" e aggiungere "index.php" alle pagine di default
      ---- Ok
      --- Arrestare (se necessario) e avviare "Sito web predefinito" e chiudete tutto

    La configurazione è terminata. Consiglio di non avviare IIS con la macchina (ovviamente solos e è una macchina per testare le pagine in locale):

    • Strumenti di amministrazione -> Servizi
      -- Cercare "Pubblicazione sul web" (XP) o "Servizio di pubblicazione web" (2000), tasto destro -> Proprietà
      --- Tipo di avvio: Manuale -> Ok
    • Per riavviare il servizio (quando ci serve) si può passare da "Servizi" (tasto destro sul servizio -> Avvia) o tasto destro su "Sito web predefinito" -> Avvia

    Come testare l'avvenuta installazione

    Potrete accedere al vostro server web in locale attraverso l'indirizzo: http://127.0.0.1/

    Per testare php create un file test.php in C:\Programmi\Apache Group\Apache2\htdocs\ (Apache) o in c:\InetPub\wwwroot\ (IIS)contenente quanto segue:

    <html>
    <body>
    <?php phpinfo(); ?>
    </body>
    </html>

    Accedete al file sopra tramite l'indirizzo: http://127.0.0.1/test.php e, se tutto funzionerà, vi apparirà una lista delle caratteristiche e la configurazione del PHP installato.

    Apache e IIS così come sono configurati non possono girare insieme... Per far sì che questo avvenga bisogna cambiare la porta di uno dei due...

    Per Apache:

    • Aprire il file httpd.conf
      -- Cercare Listen e modificare 80 con il numero di porta desiderato
    • Salvare e riavviare Apache

    Per IIS:

    • Proprietà su "Sito web predefinito"
      -- Tab "Sito web" -> Porta e scegliere la nuova porta -> Ok
    • Rivviare il servizio di IIS

  • User

    che numero devo mettere?? provato 90 a funzionato, ma dopo il riavvio stesso errore

    @Tymba said:

    Per Apache:

    • Aprire il file httpd.conf
      -- Cercare Listen e modificare 80 con il numero di porta desiderato
    • Salvare e riavviare Apache

  • Super User

    Probabilemnte hai anche IIS attivo. Sinceramente penso che PHP funzioni meglio con Apache e non con quella "cosa" made in Microsoft 😄

    Tymba ti ha detto cosa devi fare per farlo andare con IIS, se vuoi farlo andare con apache, installalo e:

    o disinstalli IIS ( te lo consiglio per ovvie ragioni )

    o cambi la porta di uno dei due webservers:

    in apache devi cambiare la direttiva Listen:

    Listen 81

    se metti così, per visualizzare il tuo sito in php devi fare:

    http://localhost:81/

    Con IIS non so 😄


  • User

    Ok pater grazie.
    Ma purtroppo non mi funziona. leggi anche in fondo grazie
    Il file "httpd" è questo:

    Based upon the NCSA server configuration files originally by Rob McCool.

    This is the main Apache server configuration file. It contains the

    configuration directives that give the server its instructions.

    See URL:http://httpd.apache.org/docs-2.0/ for detailed information about

    the directives.

    Do NOT simply read the instructions in here without understanding

    what they do. They're here only as hints or reminders. If you are unsure

    consult the online docs. You have been warned.

    The configuration directives are grouped into three basic sections:

    1. Directives that control the operation of the Apache server process as a

    whole (the 'global environment').

    2. Directives that define the parameters of the 'main' or 'default' server,

    which responds to requests that aren't handled by a virtual host.

    These directives also provide default values for the settings

    of all virtual hosts.

    3. Settings for virtual hosts, which allow Web requests to be sent to

    different IP addresses or hostnames and have them handled by the

    same Apache server process.

    Configuration and logfile names: If the filenames you specify for many

    of the server's control files begin with "/" (or "drive:/" for Win32), the

    server will use that explicit path. If the filenames do not begin

    with "/", the value of ServerRoot is prepended -- so "logs/foo.log"

    with ServerRoot set to "C:/Programmi/Apache Group/Apache2" will be interpreted by the

    server as "C:/Programmi/Apache Group/Apache2/logs/foo.log".

    NOTE: Where filenames are specified, you must use forward slashes

    instead of backslashes (e.g., "c:/apache" instead of "c:\apache").

    If a drive letter is omitted, the drive on which Apache.exe is located

    will be used by default. It is recommended that you always supply

    an explicit drive letter in absolute paths, however, to avoid

    confusion.

    Section 1: Global Environment

    The directives in this section affect the overall operation of Apache,

    such as the number of concurrent requests it can handle or where it

    can find its configuration files.

    ServerRoot: The top of the directory tree under which the server's

    configuration, error, and log files are kept.

    NOTE! If you intend to place this on an NFS (or otherwise network)

    mounted filesystem then please read the LockFile documentation (available

    at URL:http://httpd.apache.org/docs-2.0/mod/mpm_common.html#lockfile);

    you will save yourself a lot of trouble.

    Do NOT add a slash at the end of the directory path.

    ServerRoot "C:/Programmi/Apache Group/Apache2"

    ScoreBoardFile: File used to store internal server process information.

    If unspecified (the default), the scoreboard will be stored in an

    anonymous shared memory segment, and will be unavailable to third-party

    applications.

    If specified, ensure that no two invocations of Apache share the same

    scoreboard file. The scoreboard file MUST BE STORED ON A LOCAL DISK.

    #ScoreBoardFile logs/apache_runtime_status

    PidFile: The file in which the server should record its process

    identification number when it starts.

    PidFile logs/httpd.pid

    Timeout: The number of seconds before receives and sends time out.

    Timeout 300

    KeepAlive: Whether or not to allow persistent connections (more than

    one request per connection). Set to "Off" to deactivate.

    KeepAlive On

    MaxKeepAliveRequests: The maximum number of requests to allow

    during a persistent connection. Set to 0 to allow an unlimited amount.

    We recommend you leave this number high, for maximum performance.

    MaxKeepAliveRequests 100

    KeepAliveTimeout: Number of seconds to wait for the next request from the

    same client on the same connection.

    KeepAliveTimeout 15

    Server-Pool Size Regulation (MPM specific)

    WinNT MPM

    ThreadsPerChild: constant number of worker threads in the server process

    MaxRequestsPerChild: maximum number of requests a server process serves

    <IfModule mpm_winnt.c>
    ThreadsPerChild 250
    MaxRequestsPerChild 0
    </IfModule>

    Listen: Allows you to bind Apache to specific IP addresses and/or

    ports, instead of the default. See also the <VirtualHost>

    directive.

    Change this to Listen on specific IP addresses as shown below to

    prevent Apache from glomming onto all bound IP addresses (0.0.0.0)

    #Listen 12.34.56.78:81
    Listen 80

    Dynamic Shared Object (DSO) Support

    To be able to use the functionality of a module which was built as a DSO you

    have to place corresponding `LoadModule' lines at this location so the

    directives contained in it are actually available before they are used.

    Statically compiled modules (those listed by `httpd -l') do not need

    to be loaded here.

    Example:

    LoadModule foo_module modules/mod_foo.so

    LoadModule php4_module c:/php/sapi/php4apache2.dll
    LoadModule access_module modules/mod_access.so
    LoadModule actions_module modules/mod_actions.so
    LoadModule alias_module modules/mod_alias.so
    LoadModule asis_module modules/mod_asis.so
    LoadModule auth_module modules/mod_auth.so
    #LoadModule auth_anon_module modules/mod_auth_anon.so
    auth_dbm_module modules/mod_auth_dbm.so
    auth_digest_module modules/mod_auth_digest.so
    LoadModule autoindex_module modules/mod_autoindex.so
    cern_meta_module modules/mod_cern_meta.so
    LoadModule cgi_module modules/mod_cgi.so
    dav_module modules/mod_dav.so
    dav_fs_module modules/mod_dav_fs.so
    LoadModule dir_module modules/mod_dir.so
    LoadModule env_module modules/mod_env.so
    expires_module modules/mod_expires.so
    file_cache_module modules/mod_file_cache.so
    headers_module modules/mod_headers.so
    LoadModule imap_module modules/mod_imap.so
    LoadModule include_module modules/mod_include.so
    info_module modules/mod_info.so
    LoadModule isapi_module modules/mod_isapi.so
    LoadModule log_config_module modules/mod_log_config.so
    LoadModule mime_module modules/mod_mime.so
    mime_magic_module modules/mod_mime_magic.so
    proxy_module modules/mod_proxy.so
    proxy_connect_module modules/mod_proxy_connect.so
    proxy_http_module modules/mod_proxy_http.so
    proxy_ftp_module modules/mod_proxy_ftp.so
    LoadModule negotiation_module modules/mod_negotiation.so
    rewrite_module modules/mod_rewrite.so
    LoadModule setenvif_module modules/mod_setenvif.so
    speling_module modules/mod_speling.so
    status_module modules/mod_status.so
    unique_id_module modules/mod_unique_id.so
    LoadModule userdir_module modules/mod_userdir.so
    usertrack_module modules/mod_usertrack.so
    vhost_alias_module modules/mod_vhost_alias.so
    ssl_module modules/mod_ssl.so

    ExtendedStatus controls whether Apache will generate "full" status

    information (ExtendedStatus On) or just basic information (ExtendedStatus

    Off) when the "server-status" handler is called. The default is Off.

    #ExtendedStatus On

    [ ... ]

    Inoltre facendo il test di configurazione mi dice questo:
    Sintax error on line 134 of C:/programmi/Apache Group/Apache2/conf/httpd.conf:
    Cannot load C:/php/sapi/php4apache2.dll into server: impossibile trovare il modulo specificato.


  • Super User

    Ti invito a dare un'occhiata a questo post:

    http://www.giorgiotave.it/forum/viewtopic.php?t=4564

    Sono tools che autoconfigurano il pc.

    :ciauz:


  • Super User

    Ti consiglio di installare in ogni caso php5...

    Comunque vedi che non trova il modulo php4apache2.dll, controlla la path se è corretta, sennò cerca il file e metti la giusta path.

    All'inizio vedrai un: Listen 80

    sostituisci quello con: Listen 81

    Ciao!

    PS: Ti ho tagliato la parte più grossa...

    PS2: Oppure ascolta il consiglio di claudioweb, adatto per chi ha problemi nell'installazione...