2009-01-09 7 views
2

Notre application veut être capable de créer des pages statiques et interrogeables basées sur des informations de profil utilisateur, qui pourraient être reliées à d'autres profils publics.écrire des pages compatibles avec le référencement public ou privé

Je regarde LinkedIn comme un exemple ... il semble qu'ils génèrent automatiquement la page pour qu'elle soit un fichier statique indexable et consultable.

Quelqu'un peut-il suggérer comment nous ferions cela? Je pense qu'il devrait y avoir un travail cron qui s'exécute et écrit le chemin et le nom du fichier.

L'utilisateur peut vouloir garder toute la page privée, auquel cas j'imagine qu'il aurait besoin de le supprimer.

Il y a beaucoup de sous-exigences mais c'est le concept général et je voulais commencer à avoir des idées et des commentaires.

Merci.

+0

Vous semblez vous demander "comment créer du HTML en utilisant un logiciel?" – ChrisW

Répondre

3

Vous pouvez vous passer du travail cron si vous générez des pages statiques en temps réel à chaque fois que les informations de profil sont créées/mises à jour ou lorsque l'utilisateur modifie le paramètre pour conserver les informations publiques/privées. De cette façon, vous n'êtes pas constamment en boucle sur tous les utilisateurs, et ne dépendez pas d'un autre composant (votre travail cron) pour être en cours d'exécution.

1

Une alternative serait d'adopter une architecture d'informations RESTful explicite afin qu'une ressource de profil ("page") soit adressable avec une URL permanente. La ressource résultante pourrait être une page statique. Ou pas. Ce serait un détail d'implémentation invisible pour le moteur de balayage du moteur de recherche et pour tout navigateur Web accédant à la ressource.

+0

J'utilise qcodo/php ... cela signifie-t-il qu'une URL permanente est stockée sur le serveur? – AFG

+0

Malheureusement, je ne connais pas qcodo. – Brad

0

La réponse de umnik700 est assez mortelle si vous ne tenez pas compte des problèmes liés à l'authentification ou qui peut voir quoi. Tenez compte de la différence entre les profils que vous voyez lorsque vous êtes connecté à Facebook et ceux qui sont consultables publiquement. Même MySpace, avec beaucoup moins de considération pour la confidentialité des moteurs de recherche, a une visibilité qui dépend de votre relation avec l'autre personne, par défaut, pour les profils privés, à "Ce profil a été défini comme privé par l'utilisateur". . Si vous cherchez à développer soudainement un outil social où les individus obtiennent leurs informations personnelles, je suggérerais la réponse de umnik700 (générer dynamiquement le contenu, mais pas les URL, pour les versions publiques du profil) avec les éléments suivants corollaire: vous devez être en mesure de prendre en charge les préférences de confidentialité allant de très strictes à complètement ouvertes, et par défaut à une version qui se trompe au moins sur la version plus stricte, plus privée du profil. Si vous êtes en train de mettre de l'avant du contenu personnel interrogeable alors qu'il n'y avait jamais moyen de le trouver en dehors du site, il est important de ne pas abuser des informations fournies sous différents prétextes. Je sais que cela nécessite probablement plus d'évolutivité et de fonctionnalités que vous espériez que ce projet pourrait prendre, mais faire autrement pourrait être considéré comme une violation de la confiance tacite de votre base d'utilisateurs. Quoi qu'il en soit, la meilleure stratégie pour ce faire nécessitera probablement de s'appuyer davantage sur votre base de données, il est donc peut-être temps de le retravailler un peu - y compris en ajoutant quelques préférences de confidentialité.

+0

Oui, il y a un public de confidentialité ou non public pour l'information ...J'essaie de comprendre quel est le mécanisme technique réel de php - je suppose que je devrais écrire un nom de fichier, mais n'aime pas cette idée de rendre un répertoire accessible en écriture, donc l'utilisation d'un sous-domaine distinct appelé "public " – AFG

+0

Je suis sûr que vous pouvez configurer votre fichier htaccess pour ignorer des répertoires spécifiques et charger l'index d'un répertoire de niveau supérieur, en utilisant efficacement l'URL unique comme un identifiant vers l'utilisateur sans aucune variable désordonnée. Ceci est similaire au routage Zend Framework vers un contrôleur et une action –

Questions connexes