Jump to content

wbmnfktr

Members
  • Posts

    2,086
  • Joined

  • Last visited

  • Days Won

    51

Everything posted by wbmnfktr

  1. Never heard of StackPathCDN but... THANKS for this module!
  2. Yet again... this sounds super AWESOME!
  3. Wow... is all I can say right now for the moment. What amount of traffic or hits/second are you awaiting for that kind of setup? I built and ran pretty cheap and simple setups that handled up to about 30-50k hits*/day without noticable issues - ok, those sites were ProCached and running behind Cloudflare CDN (free tier), yet... it worked out. They probably could have handled even more. Nothing of my projects here are scaling horizontally, vertically or in any other direction ? compared to your setup. It's not within your league of setups by any measure - but here is how I built something that scaled back in my days very well: JS files came from sub[1-3].domain.tld super necessary parts were inlined file_get_contents of custom JS came from external sources CSS files came from sub[1-3].domain.tld almost all (critical) CSS was inlined file_get_contents of custom CSS came from external sources IMGs came from assets[1-3].domain.tld Cloudflare took care of GZIP and compressing and caching the output (not sure about brotli) ProCache took care of the heavy load prior to everything else as 95% of the whole site/s were cached (pre-cached by using a Sitescraper after each release) with a very long lifetime Asset and file handling were kind of static and strict without much options for custom solutions (wasn't really necessary for those sites) as the overall page setups were kind of minimal and simple (blog style - minimal differences) files like JS, CSS, IMGs came from other services and not my host, actually everything from a subdomain came from other services as the hosting was too cheap to handle lots of requests - I used Github, Zeitgeist (which is Vercel now - I guess), and some other services I can't remember, for that It was a bl**dy hell to make that work back then (BUT I had to save money I didn't have then) - but those were also one of my very first real projects with ProcessWire then (one of my first public 10 projects ever, and most of them were my own projects) - nowadays that setup would probably be still annoying in some parts, yet more feasible and easier to handle with way better results. My issues back then were limited database and webserver connections (those were over limit pretty fast) at my hosting companies (HostN*n, Dream***, Host***, Blue***, A2***, and such - super cheap) so I split all assets to other services and made them work via subdomains. In the very early days I only paid something between 0,99 USD/month for those sites. Later on 2,99 USD and even later 8,99 USD. It only became faster and faster. About a year before selling/shutting down those projects I paid about 60 USD/month/project. STEEP! Still the almost same setups could easily handle more than double/triple the hits*/day nowadays but with far better pagespeed results than ever before. Till today I'm happy with these kind of setups for my projects. The moment I reach at least 50k+ hits*/day with a project I return to that but with methods and services from today. What I use nowadays (for whatever reason - you will find out ?? webgo IONOS Hetzner Plusline Server Netlify Vercel Cloudflare Pages Cloudflare CDN Cloudinary Planetscale Runway Superbase * real hits/users/sessions - no fake requests ** paid plans for super high traffic sites, otherwise free tiers
  4. Could you provide a sample image? And... could you please export the field so I can import it here and compare it? My testing worked with a 1kb JPG pretty fine in PW 3.0.210. Additional note: Please open that image you try to upload and save/export it again as JPG or PNG. I bet there is something wrong with the file itself.
  5. Where does TinyMCE come from this time? You said before you are still using (which is fine) CKEditor. However. PagePathHistory is one option, yet it should be a problem here. You would know about it in the settings tab. I can't really tell where to look now without knowing or seeing anything of the setup or code. My next steps would be exporting a site profile and creating a totally new instance. Maybe even on another setup. Trying Duplicator and do the same. I faced a ton of weird issues in the past and in 95% of the time it was either my fault or a weird setup/hosting issue.
  6. Ok... so to give you a small update on this and the reason why I thougt about this feature in first place. In my case, this time, the "client"* really needed to be sure that all enabled/installed modules are somewhat/somehow Core/Ryan modules. It's not about Ryan himself, more of... 3rd party-issues. My "client"* needs a solution for a closed environment. All software, even for websites - or in this case - something similar to an intranet, needs to be audited. A website setup will be worked out in the future (hopefully), so every partner/affiliate should be able to clone a repo from Github (based on a master repo with all modules, settings, defaults audited ... - a site profile, ready to use, to be clear here). They trust ProcessWire and believe in Ryan and therefore only wanted to go with his modules in first place, while 3rd party modules are fine BUT... they needed to know about those prior to install them ANYWHERE, or when in testing-stage needed to know if those are "3rd Party" to get them into an audit. As of now we are already a step further and the "client"* looked up more and more, maybe already most of the modules we could need, already by his own DEV team. To make it clear. They looked for things in the modules like base64-encodings, external resources, external scripts, hidden Google Analytics (and similar) calls, and what-not. Their DEV team is awesome... yes, they digged through a lot and were happy so far - even 3rd Party/community modules. There were some issues they fixed already in some modules - can't say which, as I really don't know. But I got an "OK! Let's go." this week. ? * THE CLIENT: The client - is a new company of an old friend of mine - I worked with for 10+ years and they have to audit any software they use for their clients. They used Dr***l, Ty**3, and some custom solutions in the last few years and weren't that happy. A dummy/MVP-setup of mine brought them to ProcessWire with "huge success" (their words). But to be able to release it to more real clients of them, they need to be able to assure some things... which brings us back to my initial thought and question we are working on right now. To make it even more transparent: it's within the financial/automobile/insurace niche - so they are super strict with their contractors and partners (my client/friend). TL;DR: ProcessWire in a niche-software-solution, ready to be cloned from Github but with audited modules without any [shady-ish] scripts or whatever.
  7. tl;dr - see below As @flydev pointed out... a page is more than just only a page. The confusion is real. Totally real for... at least me back in the days when I started using ProcessWire, coming from b2cafelog (nowadays WordPress), Drupal, Nucleus, Textpattern and many more "solutions". Yet... I never ever tried to explain a client what a "page" is in ProcessWire. For my clients a page is the last point/instance, in terms of hierarchy in delivering output, aka a real page. I never tried (after the first 10 clients or so) to explain the steps in-between. Even most designers and developers (outside of PW) get this part - and I don't even try to explain it most of the time anymore. For reasons. While everything is a page... you might want to explain it to your client in different terms. I most often use terms like unit, container, wrapper, entity, part of, fracture... or else depending on whatever I talk about. While I use a page as reference in a recipe, it's still an "ingredient, I can reference" for a client. Makes life easier. This "page concept" is NOT about communicating it to the client (for me!), it's for understanding the concept. When you get this... PW is not only your friend, but your best friend, wingman, best man, godfather of... you get the idea. These are/could be all the same - depending on the context and your setup. $page->title $ingredient->title $city->title $user->title Even though one is a page (endpoint) and all others are a page reference, comment, repeater... whatever. You seem to be very new to PW and came from Drupal, which is totally fine, and therefore you might JUST need to explore more parts of how the API and page handling works. This is not a newbie tip at all! It's what I did and I enjoyed it! You worked with Drupal so... you know more complex setups and concepts - I guess. I came from super limited CMS (see above) back then and learned a lot about PHP and whatever you could achieve with ProcessWire. For me it was freedom to do whatever I wanted to do. Till today. tl;dr/Conclusion: Think about 'page' as a concept and not a page. Or... let us know. We are here to assist and help to find a way.
  8. "Good vibes and happy mood" music
  9. Just gave it a try on 3.0.210 in a very minimal setup and it worked out as expected. Tested published and unpublished pages and languages in various combinations. Do you use any TextFormatter or advanced field settings for the CKEditor field? Or something like Autolinks or TextformatterPageTitleLinks? Maybe URL Hooks?
  10. That's a very good call actually. My first thought were server logs. The ProcessWire logs get pruned after a while by the module @gebeer mentioned.
  11. Just another guess... what kind of setup is that production one? Standard Apache or maybe NGINX or CDN in-between there somewhere?
  12. Looks like bogus to me. Get those once in a while as well. I have Git running on most instances. So I can easily check any file changes. Oh... and when someone wants Cr*pto... always check if the exchange rate does make any sense.
  13. Welcome to my world... kind of. My main hoster and most other setups I know handle log file rotation by default - so files don't grow that large and older log files will be deleted after either a few weeks/months or in case there are too many files in the folder. Can't remember the tool you use but it should have something like this as well. I remember Webmin had something back in the days. In bigger projects and when the client wants me to take care of most of the things I check the log files at least weekly - or when using a CDN - monthly and then dig through error-logs.
  14. In case none of you have a nice little hook for adding a label to non-pw/non-core/non-ryan modules at hand, I'd like to suggest and discuss such a feature to mark modules by explicitly with either ProcessWire / @ryan or 3rd Party Module. Both for core and additional modules by Ryan in first place. The same for 3rd party/community modules. Reasons #1: Clients look into the modules section, see a huge list of modules, yet they were assured NO 3rd party modules were used. ? Doesn't feel right for the client, even though it might be totally fine. Hard to explain to someone that does only understands what he/she sees. There might be more very good reasons but this was my quite big annoying F**K UP last week. Any thoughts, ideas, or hooks?
  15. Just pushed the 2023-04-08 update: ⚒️ Features Search: Added a first version (proof-of-concept) of the recipe search. #6 Prev/Next Links: Added previous/next links on the recipe pages to for faster navigation around recipes. #7 ? Bugfixes Twitter Meta/Social Tags #4 Internal links, SEO tags and assets #5 ? Misc changes Added: Transparency Report Added: Advertisement Added: Community projects Updated: About, Changelog Listing only 5 recent recipes on homepage, makes it a bit faster Enabled Table of contens on pages where necessary More in the Changelog.
  16. ProcessWire doesn't care what the folder is called it lives in. I could be just /var/www/ or /public_html/ or /home/user/_client/domain.tld/. There are a few things you really need to take care of: $config->httpHosts $config->db* and the whole database setup of course file/folder permissions https://processwire.com/docs/security/file-permissions/ take care of all .htaccess files, especially in the root You could just move all files by hand or use either ProcessExportProfile or Duplicator. Some even just use Git to move a ProcessWire instance around. It get's a bit more complicated in case you want to run ProcessWire inside a subfolder of another project. But there are different threads about this here in the forum.
  17. I had to give it another spin/try. Reasons to convince a developer or web design agency: Reasons to convince a client:
  18. How do you sync this whole setup over to a new machine? The built-in sync or do you reinstall each and everything on another machine?
  19. Is this related to this? https://processwire.com/talk/topic/22847-processwire-dashboard/?do=findComment&comment=232002
  20. Ok, I misread the part in the docs. Page List isn't working as I read that. I use collections for this/a similar use case. // https://daun.github.io/processwire-dashboard/#/panels/collection $panel->add([ 'panel' => 'collection', 'title' => 'Newsletters', 'data' => [ 'collection' => 'template=newsletter, checkbox_sent=0', 'sortable' => true, 'columns' => [ 'title' => 'Subject', // 'url' => 'URL', // 'modified' => 'Modified', ], ], ]);
  21. RestApi Jumplinks These are the only modules that take care of or interfere with your URLs - at least I know this for sure with these two. What I would do now is this: Check the Access settings in the template Check the 404 monitor in Jumplinks to see if the 404 exception actually exists/gets caught. Check for existing jumplinks in Jumplinks for that URL. Check that specific page you are testing with for entries in the settings tab under What other URLs redirect to this page? Check if PagePageHistory module is installed, which is needed for the previous point Check redirects in .htaccess. Check if the RestApi module is involved here and double check that setup. Check the settings in the Languages Support - Page Names module Check if there is something in _init.php, init.php, ready.php and maybe even config.php. Or search any of your templates for: $session->redirect and redirect Redirects don't happen that random that's why I am bit confused for this one.
  22. Which version of ProcessWire are you using? Which modules do you use? Is the 404 page working at all? Does the template exist? Is there a redirect defined in the template? Is it the original 404 page, with ID 27? Is there something special with this setup? URL segments? Any hooks? Multisite? Multilanguage (I guess)?
  23. You can use a selector and hide the parent... https://daun.github.io/processwire-dashboard/#/panels/page-list?id=options
  24. While learning ProcessWire you will burn through a lot of test and demo sites. Or at least I did. And it was fun. Just start building something you already know the structure of. Like a blog, music collection or movie review type of site. Those data structures are relatively easy so it's a good starting point in my opinion. You will get things wrong at the beginning or will find better solutions later on. Enjoy the process. I rarely use HTML-comments in my PHP files so there is nothing I had to change. There are two awesome plugins preservim/nerdcommenter and tpope/vim-commentary - maybe those have some settings available to master this part. Yet I support @flydev's recommendation of using VS Code could be a better option right now. You have way easier access to everything and always see where you are, where you might need to go, and yes... the whole structure. Way more important are extensions. That's way easier in VS Code than in VIM. Maybe not better but faster. The moment you know all necessary files, where they are, which names they have, which names and files might be in several places or are similar (init.php and _init.php for example) switch back to VIM if you like. FZF or Telescope are way faster and more reliable than VS Code's Ctrl+P feature. With NVIM's LSP setup and some configs it could probably outsmart VS Code extensions as well.
×
×
  • Create New...