Pubblicare progetto MVC in remoto

cleto

Nuovo Utente
28 Feb 2012
13
0
1
Ciao, studiando il pattern MVC ho realizzato piccolo progetto con questa struttura:

ROOT
-> app
-> controllers
-> core
-> models
-> views

-> public
-> index.php (il file gestisce tutte le richieste)

URL in locale:


etc. etc.

in remoto cosa devo fare per 'eliminare' la cartella public dall'URL? e avere quindi:





Grazie mille e saluti
 

cleto

Nuovo Utente
28 Feb 2012
13
0
1
Ciao, studiando il pattern MVC ho realizzato piccolo progetto con questa struttura:

ROOT
-> app -> controllers
-> core
-> models
-> views

-> public
-> index.php (il file gestisce tutte le richieste)

URL in locale:


etc. etc.

in remoto cosa devo fare per 'eliminare' la cartella public dall'URL? e avere quindi:





Grazie mille e saluti
 

Fra_23

Utente Attivo
4 Mag 2021
40
4
8
Per "nascondere" la cartella `public` dall'URL e rendere il tuo sito accessibile direttamente alla radice del dominio, puoi utilizzare alcune tecniche di configurazione del server web. Di seguito ti fornisco un esempio di come farlo utilizzando il file `.htaccess` per un server Apache.

1. Assicurati di avere abilitata la mod_rewrite di Apache sul tuo server.

2. Crea un file `.htaccess` nella directory radice del tuo progetto (la stessa directory in cui si trova la cartella `public`), se non esiste già.

3. All'interno di questo file `.htaccess`, puoi aggiungere le regole di riscrittura delle URL che reindirizzeranno tutte le richieste al tuo file `index.php` nella cartella `public`.

Ecco un esempio di come potrebbe apparire il tuo file `.htaccess`:

```apache
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ public/index.php [L]
```

Queste regole di riscrittura reindirizzeranno tutte le richieste che non corrispondono a un file o a una directory esistente al tuo file `index.php` nella cartella `public`.

Inoltre, dovrai assicurarti che le risorse come fogli di stile, script JavaScript, immagini, ecc. siano correttamente caricate utilizzando percorsi relativi nella tua applicazione. Ad esempio, invece di usare un percorso assoluto come `/public/css/stile.css`, dovresti utilizzare un percorso relativo come `css/stile.css`.

Infine, assicurati di configurare correttamente le impostazioni del server web per puntare alla directory corretta come radice del tuo sito. Questo può essere fatto tramite la configurazione del server (ad esempio, il file `httpd.conf` per Apache) o attraverso il pannello di controllo del tuo provider di hosting, se lo stai utilizzando.
 
  • Like
Reactions: cleto

cleto

Nuovo Utente
28 Feb 2012
13
0
1
Per "nascondere" la cartella `public` dall'URL e rendere il tuo sito accessibile direttamente alla radice del dominio, puoi utilizzare alcune tecniche di configurazione del server web. Di seguito ti fornisco un esempio di come farlo utilizzando il file `.htaccess` per un server Apache.

1. Assicurati di avere abilitata la mod_rewrite di Apache sul tuo server.

2. Crea un file `.htaccess` nella directory radice del tuo progetto (la stessa directory in cui si trova la cartella `public`), se non esiste già.

3. All'interno di questo file `.htaccess`, puoi aggiungere le regole di riscrittura delle URL che reindirizzeranno tutte le richieste al tuo file `index.php` nella cartella `public`.

Ecco un esempio di come potrebbe apparire il tuo file `.htaccess`:

```apache
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ public/index.php [L]
```

Queste regole di riscrittura reindirizzeranno tutte le richieste che non corrispondono a un file o a una directory esistente al tuo file `index.php` nella cartella `public`.

Inoltre, dovrai assicurarti che le risorse come fogli di stile, script JavaScript, immagini, ecc. siano correttamente caricate utilizzando percorsi relativi nella tua applicazione. Ad esempio, invece di usare un percorso assoluto come `/public/css/stile.css`, dovresti utilizzare un percorso relativo come `css/stile.css`.

Infine, assicurati di configurare correttamente le impostazioni del server web per puntare alla directory corretta come radice del tuo sito. Questo può essere fatto tramite la configurazione del server (ad esempio, il file `httpd.conf` per Apache) o attraverso il pannello di controllo del tuo provider di hosting, se lo stai utilizzando.
Perfetto...danke
 

otto9due

Utente Attivo
22 Feb 2014
591
25
28
Ciao, in genere negli mvc c'è un file di configurazione o qualcosa del genere chiamato "router" o similari, questo contiene le rotte o link dell'applicazione. Ora non so com'è fatto quello tuo, presumo che quel public serva a qualcosa, proverei a capire perchè sta li e nel caso agirei per ottimizzare il sistema di routing.
 

cleto

Nuovo Utente
28 Feb 2012
13
0
1
Ciao, grazie prima tutto.
Si ho router chiamato app.php in:
root->app->core->app.php
in public:
root -> public ho il css, il js , le immagini, i font, etc e l'entry point index.php

Seguendo contributo di Fra_23 ho risolto creando 2 file .htaccess :
root->.htaccess

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
</IfModule>

e altro file .htaccess:
root->public->.htaccess

<IfModule mod_rewrite.c>
Options -Multiviews
RewriteEngine On
RewriteBase /public
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1 [L,QSA]
</IfModule>

Magari può essere utile a qualcuno.
Danke a tutti.
 
Discussioni simili
Autore Titolo Forum Risposte Data
A PUBBLICARE APP B2B Sviluppo app per iOS 1
R Cerco chi mi può pubblicare la mia app Offerte e Richieste di Lavoro e/o Collaborazione 2
V [PHP] [HTML] pubblicare immagini wxtoimg su sito web PHP 17
C pubblicare un album html su facebook HTML e CSS 1
A AIUTO!!! Pubblicare sito! Discussioni Varie 15
asevenx Pubblicare automaticamente un articolo da linkedin su blog wordpress WordPress 1
Recover Pubblicare database access in sito web MS Access 0
piccino Far pubblicare un solo articolo WordPress 0
filippino automatismo per pubblicare nuovi post su google+ WordPress 0
M Pubblicare app nel market Sviluppo app per Android 1
I Pubblicare un sito realizzato con html, css e javascript Webdesign e Grafica 13
T Marketplace Google Play: server partita IVA per pubblicare app a pagamento? Leggi, Normative e Fisco 2
H Pubblicare in maniera permanente dei dati PHP 10
T Pubblicare su Bacheca Facebook con Php PHP 1
P pubblicare portfolio su web non avendo partita iva Leggi, Normative e Fisco 0
A errore : "550 cannot stor no permission" per pubblicare il sito con expression web Webdesign e Grafica 0
A errore : "550 cannot stor no permission" per pubblicare il sito con expression web HTML e CSS 1
F Vbulletin 4.0: pubblicare post forum su facebook tramite pulsante CMS (Content Management System) 8
A Pubblicare sito joomla su aruba Hosting 1
C Come pubblicare un sito web con sites google? Presenta il tuo Sito 0
F pubblicare un sito completamente ristrutturato SEO e Posizionamento 5
najaru Si puo pubblicare una news relativa ad un altro sito? Leggi, Normative e Fisco 2
G problema nel pubblicare un file di 10 minuti Flash 7
S Nuovo portale per pubblicare comunicati stampa in modo gratuito e veloce Presenta il tuo Sito 0
F Pubblicare le foto di un prodotto artigianale e il nome dell'azienda. Leggi, Normative e Fisco 3
S con cosa pubblicare il sito e controllo compatibilità browser HTML e CSS 3
G problema nel pubblicare in html da flash Flash 8
M pubblicare sito Flash 1
S pubblicare i miei template Supporto Mr.Webmaster 1
R pubblicare un sito Webdesign e Grafica 0
A array da pubblicare Javascript 0
L Pubblicare su uno spazio Alice business Flash 1
S Pubblicare sito web Hosting 0
C Non riesco più a pubblicare il web con Front Page HTML e CSS 8
G Pubblicare flash Flash 0
A Come pubblicare foto panoramiche HTML e CSS 0
grottafelix batch dos per pubblicare su un server Programmazione 9
P Aiuto!! pubblicare un filmato flash in secondo piano... Flash 7
N non riesco a pubblicare il mio web HTML e CSS 1
P pubblicare il sito con Dreamweaver MX HTML e CSS 11
B ri-pubblicare il sito in rete HTML e CSS 3
M come pubblicare un tema di frontpage? HTML e CSS 1
M come pubblicare il proprio sito HTML e CSS 10
Filippine pubblicare le pagine con FrontPage HTML e CSS 5
B Non Riesco A Pubblicare Il Sito HTML e CSS 5
M Come creare animazioni e pubblicare siti Flash 2
E Filmato da pubblicare Flash 0
J pubblicare una pagina asp Classic ASP 10
F NetBeans problema creazione progetto Java Windows e Software 0
C [Diagramma E/R] Consiglio su progetto Database 0

Discussioni simili