Ciao CINK, ti posso consigliare il CMS aspnetcom.net (nomino il nome del cms dato che anche gli altri lo fanno) che integra in maniera nativa il forum.
[...]
Ciao CINK, ti posso consigliare il CMS aspnetcom.net (nomino il nome del cms dato che anche gli altri lo fanno) che integra in maniera nativa il forum.
[...]
@liberementi said:
Ciao a tutti,
Una sorta di cms aziendale, non molto complesso e senza database.
Grazie
Buona giornata.
Ti posso realizzare il plugin che ti occorre [...]
Salve Fabrizio, ti posso far provare su un host [...] , e creatri gratuitamente il template come lo vuoi te.
Il CMS è multi sito, ovvero gestisce infiniti siti su domini differenti completi di gallery, forum e tutto il resto.
Gli articoli che scrivi li puoi dividere in temi>categorie>sotto categorie>voci
Con la divisione che gli dai appaiono ordinati in homepage.
Il CMS è gratuito, se sei interessato ti faccio provare la versione che verrà rilasciata a giugno in HTML5, .NET 4.0, IIS7.5 massiccio uso di codice multithread per una migliore esperienza di navigazione.
Ragazzi, buona pasqua a tutti!
Oggi parliamo della gallery che è uno dei punti forti dell'applicativo, e lo eleva di qualità rispetto agli altri.
La gallery permette l'inserimento di foto, che potranno avere qualsiasi dimensione. In ogni gallery ci possono essere delle sotto-gallery che formeranno una struttura ad albero.
Gioia dei SEO, le descrizioni e i tiitoli vengono dinamicamente passate alla immagine come EXIF, al momento della request. Con gli attributi Titolo/Descrizione dell'EXIF impostato, le immagini vengono meglio indicizzate.
L'immagine salvata in locale è unica, poi al browser viene inviata una copia generata dinamica della stessa con le dimensioni impostate nella configurazione, sempre in dinamico viene sovrapposta la scritta di copyright semi-trasparente (o come da voi impostata per font e colore). Sempre in dinamico vengono generati gli EXIF descrittivi nella lingua del sito, infatti - essendo l'applicativo multi lingua - permette l'inserimento del foto-album su siti con lingue differenti, in questo caso le descrizioni e le foto, nelle varie lingue saranno gestite separatamente, esempio: La stessa foto sul un sito inglese avrà descrizione "Moscow", mentre in quello italiano "Mosca", la cosa è gestita completamente in maniera trasparente, e gli EXIF dinamici vengono generati localizzati nella lingua del sito che si sta visitando.
Sembrerà scontato ma gli altri CMS non lo fanno, le immagini qualora inviate a dispositivi mobili quali per esempio telefonini, saranno sempre generate nella dimensione più adatta al dispositivo, con una dimensione mai superiore a querlla del display.
Già che ho accennato al funzionamento delle immagini della gallery su dispositivo cellulare, aggiungo anche un'altra cosa che presumo sia unica:
Qualsiasi template usato, è anc'esso generato dinamicamente, e nel caso si navighi con un dispositivo cellulare, il template genererà una grafica esclusivamente modellata per il dispositivo cellulare o palmare.
L'applicativo web è quindi perfettamente fruibile dai telefoni cellulari con qualsiasi template.
Paso ad una variabile un valore con l'istruzione seguente:
value = Values[nidx];
Values è un array, con il debug vedo che il valore di Values[nidx] è:
"default\spb.60.5/26/2006 10:12:02 PM"
Mentre invece a value viene assegnato il valore:
"defaultspb.60.5/26/2006 10:12:02 PM"
In pratica la barra retroversa va persa con l'assegnazione. Come posso rimediare?
Uso firefox assistito da firebug
Grazie
La scelta di un CMS si valuta su fattori personali, voglio parlarvi di un CMS (sito ufficiale cmsaspnet punto com) open source scritto su framework .NET 4.0 linguaggio VB.NET, presenterò il cuore dell?applicativo, ed in seguito tutti i plugin (che sono il pezzo forte) e alcune nozioni per gli sviluppatori.
Il CMS ha la caratteristica di essere multi lingua, multi dominio, e soprattutto estremamente veloce (incredibilmente veloce) e usare poche risorse per riuscire a gestire non un dominio o singolo sito ma un network di siti. Installato su hosting molto scarso da (1$ al mese), è in grado tranquillamente di reggere il traffico di 100 siti web. Il CMS è stato ideato per gestire su server dedicato anche migliaia di siti sulla stessa macchina, con una sola installazione e un solo hosting. Gestisce domini multipli anche laddove l?hosting viene venduto specificatamente per uso di dominio singolo. Il poter gestire un network di siti con una sola installazione di CMS, abbatte i costi (un solo hosting per più siti), semplifica notevolmente gli aggiornamenti dell?applicativo, e vi è una notevole economia di RAM in quanto l?applicativo anche nel caso di più siti viene istanziato una sola volta: 256 mega di RAM sono sufficienti per far girare 100 siti web.
Il forum integrato nel CMS ? come del resto l?intero applicativo ? non fa uso di database, lavora in ram ad oggetti, sviluppando una velocità impensabile usando le tecniche più comuni, la navigazione risulta sempre fluida e probabilmente questo software è il più veloce motore di rendering per forum attualmente esistente. Vi è un massiccio uso di tecniche multi-thread.
Google per tutti i risultati inerenti al forum, mostra il tracciato cliccabile che porta a quell?argomento (esempo: [Natura] > [Fiori] > I miei tulipani stanno appassendo).
Degno di nota é un robusto sistema anti vandalismo:
Il forum prevede (opzionale), l?autenticazione degli utenti con un micro pagamento PayPal.
Se non si opta per l?autenticazione utenti con micro pagamento, i messaggi dei nuovi iscritti saranno inizialmente visibili solo all?autore e agli amministratori i quali potranno apportare censura prima che verranno resi pubblici.
Gli amministratori possono essere nominati, oppure ? per via democratica - sono eletti dagli altri utenti, in pratica è possibile dare un voto ad ogni utente che va da 1 a 5, vi è poi una media ponderata che calcola un punteggio, il voto degli utenti con punteggio maggiore ha peso maggiore. Il punteggio ottenuto da ogni utente gli permette di ottenere facoltà amministrative (censura, ban utenti): Mettiamo che un utente ad altri non sia di gradimento, questi possono esprimersi per dare un ammonimento, raggiunto un determinato quorum, l?ammonimento scatta in automatico divenendo una sospensione temporanea dell?account. Nello stesso modi gli utenti possono apportare censure.
Cosa posso ancora raccontare del forum? E? possibile inserire nei reply i video, indicando la sorgente (il software analizza il data-type e inserisce il player più opportuno), oppure basta inserire il link della pagina in cui è contenuto il video su YouTube o altri noti video shared.
Aprire un sondaggio è semplice, basta inserire nel testo una domanda e a seguire le risposte in opzione una per riga, che queste diventano un sondaggio.
Per qualsiasi contenuto (pagina con un articolo), gestita dal CMS è possibile assegnare delle parole o frasi, le quali in tutti i siti gestiti dal network diverranno delle frasi sensibili, ovvero dei link che sono messi in dinamico sul contenuto HTML. Con un esempio.
Ammettiamo che il CMS gestisca 2 siti web, uno parla di frutta, uno di ricette:
Sul sito che parla di frutta c?è un articolo che parla delle mele.
Sul sito delle ricette c?è un articolo che parla della torta di mele.
Nel sito delle ricette, nella frase ?La torta di mele della nonna?, la parola ?mele? diverrà un link alla pagina del sito di frutta verso l?articolo in cui si parla delle caratteristiche della mela.
Nel sito della frutta, nella frase ?Le mele sono un frutto noto per essere impiegato in molte ricette tra cui la famosa torta di mele?, la sub frase ?torta di mele? diverrà un link che punta alla ricedda della torta di mele sul sito delle ricette.
I link testuali valgono anche per i testi nell?ambito del forum,
Questa funzione che apparentemente non ha nulla di complicato, la introdussi 5 anni fa (fui anche il primo ad implementare gli RSS in un forum), con un algoritmo che è un gioiello per la velocità raggiunta (è open source e chi vuole lo può analizzare o copiare): Basti pensare che il CMS può gestire migliaia di siti simultaneamente, ogni sito può avere innumerevoli articoli ai quali sono associate parole o frasi. Tutta questa massa innumerevole si frasi che rappresentano contenuti sensibili da trasformare in link ove appaiono per puntare all?articolo che le tratta, vengo gestite dinamicamente su contenuti testuali ma html: Mettiamo il caso che il server sta per inviare al browser un articolo o un topic con 10.000 parole, lo analizza e vede se in questo testo vi siano le parole da trasformare in link, facendo passare una a una tutte le parole (o frasi) cercandole nell?html e sostituendole con il link se trovate, ed il testo viene trattato come html e non come semplice testo: Per esempio (stando all?esempio sopra) se la parola ?mela? appare in un attributo ?alt? di una immagine, questo non viene sostituito in un link e romane com?è. (Chi tratta programmazione sa quanto sia difficile fare al volo questa operazione senza degradare in velocità creando tempi di latenza per l?applicativo, ragion per cui, dubito che altri CMS facciano cose simili in maniera dinamica con il request da client, al massimo lo fanno in maniera statica modificando l?html che viene salvato su disco o database).
Per oggi finisco qui, in seguito esporrò altre caratteristiche, fino ad arrivare a trattare come creare al volo scrivendo pochissimo codice dei plugin per l?applicativo.
Oggi si è parlato di forum, come esempio potete vedere quello che appare in testa alla ricerca scrivendo nei motori, la parola ?russologia?.
Dimenticavo, se no poi passando oltre mi dimentico: L?hosting windows di Godaddy, istanzia l?applicativo 3 volte su 3 computer differenti (ciò non viene menzionato, ma è così per tutti e tre i piani in vendita sua US che UE) che condividono il disco, in caso di una configurazione multi server come questa, la nuova versione del CMS che sto per rilasciare, avvia una pipeline di comunicazione tra i server su cui gira l?applicativo, e si impartiscono istruzioni per lavorare in maniera efficientissima rimanendo perfettamente sincronizzati.
Non è una comparazione per l'utente finale, ma per lo sviluppatore.
Salve ragazzi e buona giornata. Chiedo un attimo di attenzione a chi conosce i CMS più popolari (wordpresso e jomla) per creare una tavola di confronto, pubblico qui le caratteristiche sulle quali da intenditori potete mettere una spunta (SI/NO/Parziale).
Il questionario che segue si intende per il CMS senza Plugin e Addons (perché è chiaro che poi con i moduli aggiuntivi si può fare di tutto e di più).
Distribuito con codice sorgente [sì/no]
Modulare [sì/no] (Indica la possibilità di integrare l?applicativo base con moduli in gradi di aggiungere funzionalità extra)
Connessione a database non richiesta [sì/no]
Multi dominio [sì/no] (Si intende se il CMS con una singola istallazione sia in grado di gestire siti differenti su domini differenti).
Sottositi [sì/no] (Si intende che il CMS con una sola istallazione sia in grado di permettere la realizzazione di più siti sotto lo stesso dominio).
Sito multi lingua [sì/no] (Si intende che il CMS utilizzabile per creare un sito con più lingue).
Siti in lingue diverse [sì/no] (Si intende che il CMS sia in grado di gestire siti con lingue differenti su domini differenti).
Supporto skin (template) [sì/no]
Skin ereditari [sì/no] (Ovvero un template può prendere come base un altro template e aggiungervi le proprie caratteristiche)
Adattamento automatico della Skin (template) per cellulari e palmari [sì/no] (Significa che l?applicativo CMS sia in grado di adattare sia la skin usata che di generare dinamicamente codice per adatto ai dispositivi mobili qualora si acceda al sito con questi)
Distribuito con forum proprietario [sì/no]
Possibilità di inserire più forum per ogni sito web [sì/no]
Possibilità di suddividere ogni singolo forum in tematiche differenti e in diverse categorie [sì/no]
Creazione sondaggi [sì/no] (Tale caratteristica sta ad indicare la possibilità di poter inserire ? negli articoli, nel forum o in altri contesti - dei sondaggi ai quali il visitatore può dare la propria opinione con un voto).
Chat proprietaria [sì/no] (Il CMS nella versione nativa dispone già di una chat nella quale possono confluite i visitatori).
Multi-utente [sì/no] (Permette la registrazione di più iscritti).
Gerarchia utenti [sì/no] (Permette di assegnare un ruolo agli utenti con la classica gerarchia banned/visitors/junior/senior/administrator/supervisor)
Libreria per pagamenti [sì/no] (Si intende che l?applicativo ? in versione nativa ? gestisce un sistema di pagamenti a livello di codice come per esempio l?integrazione IPN di PayPal o interagisce con le api di Moneybookers).
Gestione dinamica delle immagini [sì/no] (Il CMS in base al dispositivo di lettura utilizzato offre immagini scalate nella dimensione più idonea, in questo caso i dispositivi portatili avranno immagini più piccole e leggere, i computer invece immagini con risoluzione maggiore e quindi meglio definite).
Gestione album fotografici [sì/no] (Sono contenitori per le immagini che vanno a formare delle gallerie fotografiche).
Album fotografici ad albero [sì/no] (Significa che un albero fotografico, può contenere sottoinsiemi di alberi fotografici i quali a loro volta possono contenere altri album fotografici.)
Inserimento video facilitato [sì/no] (Sta ad indicare la possibilità di inserire video nei vari contesti senza dover inserire il codice HTML dell?embedded, ma semplicemente indicando il link dello stream video, o l?url di noti portali di shared video quali per esempio dailymotion o youtube.)
Distribuzione tramite feed [sì/no] (L?applicativo web è in grado di generare dinamicamente i feed ? RSS o Atom ? necessari par la redistribuzione dei contenuti).
Aggregazione feed [sì/no] (L?applicativo è in grado di aggregare ed esporre contenuti provenienti da fonti RSS impostabili).
PERFORMANCE:
Codice generato XHTML [sì/no]
Css su file esterno [sì/no]
Uso della cache [sì/no/pagina] ( ?Pagina? sta ad indicare che il contenuto x/html della pagina che viene inviata al browser, è salvato in una cache e chiamate successive invieranno al browser il contenuto della cache fino a che questa scade (tale tecnica può portare alla visualizzazione di pagine non aggiornate). Il ?sì?, indica che la cache è a livello software, quindi non sono valori testuali a venire cachati ma oggetti software tenuti pronti per un successivo impiego, tale tecnica parta alla visualizzazione di contenuti sempre aggiornati e rende rizzati velocemente, perché gli oggetti nella cache non dovranno essere istanziati ad ogni request dal client)
Parallelismo (muly-thread) [sì/no] (Per parallelismo si intende la capacità di una applicazione (web nel nostro caso) di operare per ogni request con thread paralleli,un classico esempio è la ?renderizzazione? di una pagina di un forum, che se eseguita su thread singolo avviene secondo la sequenza request al database, ottenimento dei record con le singole reply del topic, e inserimento in pagina uno a uno di ogni reply fino a comporre il topic che appoarirà nel client (browser). Tale operazione eseguita in parallelo, avviene: Creazione di più thread singoli che possiamo definire come ?worker?, ogni ?worker? è in grado di lavorare parallelamente (contemporaneamente con gli altri). Ogni ?worker? preleva da una ?collectio? un singolo reply e lo dispone nella pagina la quale non appena l?ultimo ?worker? ha finito di lavorare, viene inviata al browser.)
ANTI VANDALISMO
Protezione dagli attacchi DDoS [sì/no] Sta ad indicare un dispositivo software che disabilita la reazione dell?applicativo alle richieste http provenienti da determinate fonti che volutamente tentano di sovraccaricare il server per metterlo offline.
Lista parole censurate [sì/no] Impedimento pubblicazione contenuti con parole o frasi appartenenti alla lista dei quelle censurate.
Blocco disturbatori per indirizzo IP [sì/no]
Blocco disturbatori con cookie [sì/no] (Qualora l?utente disturbatore venisse bloccato, cambiando l?IP senza cancellare i cookie verrà comunque riconosciuto e anche il nuovo IP inserito in automatico tra quelli banditi (bannati).)
Blocco disturbatori con codice univoco visitatore [sì/no] (L?applicativo web è in grado di riconoscere il visitatore in base a tutta una serie di caratteristiche che andranno a formare un codice univoco indipendente dall?indirizzo IP o dai cookie. In tal caso gli utenti banditi (bannati), non potranno più interagire anche cambiando IP o cancellando i cookie.)
Validazione sicura utente [sì/no] (L?applicativo ? in via opzionale - è in grado di validare in maniera certa un utente all?atto dell?iscrizione, dando ad esso una identità reale. Il metodo più classico è quello di richiedere un micro pagamento che servirà per l?autenticazione certa).
SEO:
Frasi contestuali [sì/no] (Sta ad indicare la possibilità che se ai contenuti vengono assegnate delle frasi, qualora questa appaiano nei testi appartenenti allo stesso sito o allo stesso network - se il CMS è multi sito -, esse vengono automaticamente e in maniera dinamica trasformate in link che puntano al contenuto/articolo oggetto della frase. Per esempio, se un pagina parla della ricetta del tiramisù,in tutto il network la parola tiramisù punterà con un link a quella pagina).
Anti disturbo crawler [sì/no] (Significa che il codice generato contiene marcatori per rendere i contenuti puliti e chiari agli spider dei motori di ricerca, i classici esempio sono i famosi tag goggleon/goggleof per marcare le parti del sito ?disturbanti? come barre, bottoni, toots, slogan, e l?utilizzo dei nofollow sui link interni al sito che appaiono sui bottoni, e gadget che non portano a contenuti ma a funzionalità, esempio: Il classico bottone/link ?aggiungi un commento?, o ?citazione?, ecc..)
Sitemap generata dinamicamente [sì/no] (Significa che la sitemap, viene generata dall?applicativo web ogni qualvolta un contenuto viene aggiornato, oppure ?al volo? non appena si tenta di leggerla.)
Sitemap per le immagini [sì/no]
Il problema l'ho risolto impostando l'Administrator come utente che impersonalizza il pool dell'applicazione.
La cosa strana, è che sempre sotto App_Data scrivevo dei file di log con estenzione .txt e non ho riscontrato restrizioni nello scrivere in questi file, mentre invece l'impedimento in scrittura era solo nello scrivere file con estenzione .xml
Applicazione web su IIS7.5 in errore scrittura file XML
L'applicativo l'ho già installato correttamente su deversi host, e ha sempre funzionato, ora sono passato ad un server dedicato dove ho riscontrato l'errore che qui spiegherò.
Uso IIS 7.5 (in inglese)
L'applicativo è settato per girare con la securuty policy FULL TRUST
La mia applicazione web mi va in errore quando tenta di scrivere un file XML nella directory App_Data, chiedo istruzioni su come configurare correttamente IIS 7.5 per far girare il mio applicativo.
L'errore che mi appare a video è il seguente:
**Description: **An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
**Exception Details: **System.UnauthorizedAccessException: Access to the path 'C:\inetpub\wwwroot\App_Data\forum\1\9143\topic.xml' is denied.
ASP.NET is not authorized to access the requested resource. Consider granting access rights to the resource to the ASP.NET request identity. ASP.NET has a base process identity (typically {MACHINE}\ASPNET on IIS 5 or Network Service on IIS 6 and IIS 7, and the configured application pool identity on IIS 7.5) that is used if the application is not impersonating. If the application is impersonating via <identity impersonate="true"/>, the identity will be the anonymous user (typically IUSR_MACHINENAME) or the authenticated request user.
To grant ASP.NET access to a file, right-click the file in Explorer, choose "Properties" and select the Security tab. Click "Add" to add the appropriate user or group. Highlight the ASP.NET account, and check the boxes for the desired access.
Source Error:
The source code that generated this unhandled exception can only be shown when compiled in debug mode. To enable this, please follow one of the below steps, then request the URL:
<%@ Page Language="C#" Debug="true" %>
or:
<configuration>
<system.web>
<compilation debug="true"/>
</system.web>
</configuration>
Note that this second technique will cause all files within a given application to be compiled in debug mode. The first technique will cause only that particular file to be compiled in debug mode.
Important: Running applications in debug mode does incur a memory/performance overhead. You should make sure that an application has debugging disabled before deploying into production scenario.
Stack Trace:
[UnauthorizedAccessException: Access to the path 'C:\inetpub\wwwroot\App_Data\forum\1\9143\topic.xml' is denied.] WebApplication.FileManager.Serialize(Object Obj, String NameFile) +872 WebApplication.Topic.SaveInfo() +129 WebApplication.Topic.IncReaded() +27 WebApplication.ForumManager.ShowTopic(SubSite Setting, Int32 ForumID, Int32 TopicID, Int32 CurrentPage, Boolean ShowCensored, Boolean ShowAvatars, Boolean OperationsColumn, Page Page, ActionType Action, String Jump, Control Buttons, Control LinksCorrelated, Boolean AddTitle, Boolean SetMetaRevisitAfter) +1058 WebApplication.Migrated_forum.SetVisualization() +3451 System.Web.UI.Control.PreRenderRecursiveInternal() +113 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4185
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1
**Server Error in '/' Application. **
Access to the path 'C:\inetpub\wwwroot\App_Data\forum\1\9143\topic.xml' is denied.